6b97e0d53fe74962bb42c0f7189fd0526d417ce5
2 * Функции инициализации контекста и объектов
5 void oberon_generator_init_context(oberon_context_t
* ctx
);
6 void oberon_generator_init_type(oberon_context_t
* ctx
, oberon_type_t
* type
);
7 void oberon_generator_init_var(oberon_context_t
* ctx
, oberon_object_t
* var
);
8 void oberon_generator_init_proc(oberon_context_t
* ctx
, oberon_object_t
* proc
);
9 void oberon_generator_destroy_context(oberon_context_t
* ctx
);
12 * Функции генерации тела модуля
15 void oberon_generate_begin_module(oberon_context_t
* ctx
);
16 void oberon_generate_end_module(oberon_context_t
* ctx
);
19 * Функции генерации и вызова процедур
22 void oberon_generate_begin_proc(oberon_context_t
* ctx
, oberon_object_t
* proc
);
23 void oberon_generate_end_proc(oberon_context_t
* ctx
);
24 void oberon_generate_call_proc(oberon_context_t
* ctx
, oberon_expr_t
* desig
);
27 * Функции генерации операторов
30 void oberon_generate_assign(oberon_context_t
* ctx
, oberon_expr_t
* src
, oberon_expr_t
* dst
);
33 * Функции генерации кода
36 void oberon_generate_code(oberon_context_t
* ctx
);