1 /* This C header file is generated by NIT to compile modules and programs that requires program. */
4 #include "icode._sep.h"
5 #include "primitive_info._sep.h"
6 #include <nit_common.h>
8 extern const classtable_elt_t VFT_Program
[];
9 extern const char *LOCATE_program
;
10 extern const int SFT_program
[];
11 #define ATTR_program___ToolContext____global(recv) ATTR(recv, (SFT_program[0] + 0))
12 #define ATTR_program___ToolContext____use_SFT_optimization(recv) ATTR(recv, (SFT_program[0] + 1))
13 #define CALL_program___ToolContext___global(recv) ((program___ToolContext___global_t)CALL((recv), (SFT_program[1] + 0)))
14 #define CALL_program___ToolContext___global__eq(recv) ((program___ToolContext___global__eq_t)CALL((recv), (SFT_program[1] + 1)))
15 #define CALL_program___ToolContext___use_SFT_optimization__eq(recv) ((program___ToolContext___use_SFT_optimization__eq_t)CALL((recv), (SFT_program[1] + 2)))
16 #define CALL_program___ToolContext___use_SFT_optimization(recv) ((program___ToolContext___use_SFT_optimization_t)CALL((recv), (SFT_program[1] + 3)))
17 #define ID_Program (SFT_program[2])
18 #define COLOR_Program (SFT_program[3])
19 #define ATTR_program___Program____tc(recv) ATTR(recv, (SFT_program[4] + 0))
20 #define ATTR_program___Program____main_module(recv) ATTR(recv, (SFT_program[4] + 1))
21 #define ATTR_program___Program____main_method(recv) ATTR(recv, (SFT_program[4] + 2))
22 #define ATTR_program___Program____main_class(recv) ATTR(recv, (SFT_program[4] + 3))
23 #define INIT_TABLE_POS_Program (SFT_program[5] + 0)
24 #define CALL_program___Program___tc(recv) ((program___Program___tc_t)CALL((recv), (SFT_program[5] + 1)))
25 #define CALL_program___Program___main_module(recv) ((program___Program___main_module_t)CALL((recv), (SFT_program[5] + 2)))
26 #define CALL_program___Program___main_method(recv) ((program___Program___main_method_t)CALL((recv), (SFT_program[5] + 3)))
27 #define CALL_program___Program___main_class(recv) ((program___Program___main_class_t)CALL((recv), (SFT_program[5] + 4)))
28 #define CALL_program___Program___finish_processing_classes(recv) ((program___Program___finish_processing_classes_t)CALL((recv), (SFT_program[5] + 5)))
29 #define CALL_program___Program___compute_main_method(recv) ((program___Program___compute_main_method_t)CALL((recv), (SFT_program[5] + 6)))
30 #define CALL_program___Program___generate_allocation_iroutines(recv) ((program___Program___generate_allocation_iroutines_t)CALL((recv), (SFT_program[5] + 7)))
31 #define CALL_program___Program___with_each_iroutines(recv) ((program___Program___with_each_iroutines_t)CALL((recv), (SFT_program[5] + 8)))
32 #define CALL_program___Program___with_each_methods(recv) ((program___Program___with_each_methods_t)CALL((recv), (SFT_program[5] + 9)))
33 #define CALL_program___Program___with_each_live_local_classes(recv) ((program___Program___with_each_live_local_classes_t)CALL((recv), (SFT_program[5] + 10)))
34 #define CALL_program___Program___init(recv) ((program___Program___init_t)CALL((recv), (SFT_program[5] + 11)))
35 #define ATTR_program___MMLocalClass____init_var_iroutine(recv) ATTR(recv, (SFT_program[6] + 0))
36 #define ATTR_program___MMLocalClass____checknew_iroutine(recv) ATTR(recv, (SFT_program[6] + 1))
37 #define ATTR_program___MMLocalClass____new_instance_iroutine(recv) ATTR(recv, (SFT_program[6] + 2))
38 #define CALL_program___MMLocalClass___init_var_iroutine(recv) ((program___MMLocalClass___init_var_iroutine_t)CALL((recv), (SFT_program[7] + 0)))
39 #define CALL_program___MMLocalClass___init_var_iroutine__eq(recv) ((program___MMLocalClass___init_var_iroutine__eq_t)CALL((recv), (SFT_program[7] + 1)))
40 #define CALL_program___MMLocalClass___checknew_iroutine(recv) ((program___MMLocalClass___checknew_iroutine_t)CALL((recv), (SFT_program[7] + 2)))
41 #define CALL_program___MMLocalClass___checknew_iroutine__eq(recv) ((program___MMLocalClass___checknew_iroutine__eq_t)CALL((recv), (SFT_program[7] + 3)))
42 #define CALL_program___MMLocalClass___new_instance_iroutine(recv) ((program___MMLocalClass___new_instance_iroutine_t)CALL((recv), (SFT_program[7] + 4)))
43 static const char * const LOCATE_program___ToolContext___global
= "program::ToolContext::global";
44 val_t
program___ToolContext___global(val_t p0
);
45 typedef val_t (*program___ToolContext___global_t
)(val_t p0
);
46 static const char * const LOCATE_program___ToolContext___global__eq
= "program::ToolContext::global=";
47 void program___ToolContext___global__eq(val_t p0
, val_t p1
);
48 typedef void (*program___ToolContext___global__eq_t
)(val_t p0
, val_t p1
);
49 static const char * const LOCATE_program___ToolContext___use_SFT_optimization__eq
= "program::ToolContext::use_SFT_optimization=";
50 void program___ToolContext___use_SFT_optimization__eq(val_t p0
, val_t p1
);
51 typedef void (*program___ToolContext___use_SFT_optimization__eq_t
)(val_t p0
, val_t p1
);
52 static const char * const LOCATE_program___ToolContext___use_SFT_optimization
= "program::ToolContext::use_SFT_optimization";
53 val_t
program___ToolContext___use_SFT_optimization(val_t p0
);
54 typedef val_t (*program___ToolContext___use_SFT_optimization_t
)(val_t p0
);
55 val_t
NEW_ToolContext_mmloader___ToolContext___init();
56 static const char * const LOCATE_program___Program___tc
= "program::Program::tc";
57 val_t
program___Program___tc(val_t p0
);
58 typedef val_t (*program___Program___tc_t
)(val_t p0
);
59 static const char * const LOCATE_program___Program___main_module
= "program::Program::main_module";
60 val_t
program___Program___main_module(val_t p0
);
61 typedef val_t (*program___Program___main_module_t
)(val_t p0
);
62 static const char * const LOCATE_program___Program___main_method
= "program::Program::main_method";
63 val_t
program___Program___main_method(val_t p0
);
64 typedef val_t (*program___Program___main_method_t
)(val_t p0
);
65 static const char * const LOCATE_program___Program___main_class
= "program::Program::main_class";
66 val_t
program___Program___main_class(val_t p0
);
67 typedef val_t (*program___Program___main_class_t
)(val_t p0
);
68 static const char * const LOCATE_program___Program___finish_processing_classes
= "program::Program::finish_processing_classes";
69 void program___Program___finish_processing_classes(val_t p0
);
70 typedef void (*program___Program___finish_processing_classes_t
)(val_t p0
);
71 typedef void (*CLOS_OC_program___Program___finish_processing_classes_1_0
)(struct stack_frame_t
*);
72 void OC_program___Program___finish_processing_classes_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
73 typedef void (*OC_program___Program___finish_processing_classes_1_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
74 static const char * const LOCATE_program___Program___compute_main_method
= "program::Program::compute_main_method";
75 void program___Program___compute_main_method(val_t p0
);
76 typedef void (*program___Program___compute_main_method_t
)(val_t p0
);
77 static const char * const LOCATE_program___Program___generate_allocation_iroutines
= "program::Program::generate_allocation_iroutines";
78 void program___Program___generate_allocation_iroutines(val_t p0
);
79 typedef void (*program___Program___generate_allocation_iroutines_t
)(val_t p0
);
80 typedef void (*CLOS_OC_program___Program___generate_allocation_iroutines_1_0
)(struct stack_frame_t
*);
81 void OC_program___Program___generate_allocation_iroutines_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
82 typedef void (*OC_program___Program___generate_allocation_iroutines_1_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
83 typedef void (*CLOS_OC_program___Program___generate_allocation_iroutines_3_0
)(struct stack_frame_t
*);
84 void OC_program___Program___generate_allocation_iroutines_3(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
85 typedef void (*OC_program___Program___generate_allocation_iroutines_3_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
86 typedef void (*CLOS_OC_program___Program___generate_allocation_iroutines_5_0
)(struct stack_frame_t
*);
87 void OC_program___Program___generate_allocation_iroutines_5(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
88 typedef void (*OC_program___Program___generate_allocation_iroutines_5_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
89 typedef void (*CLOS_OC_program___Program___generate_allocation_iroutines_7_0
)(struct stack_frame_t
*);
90 void OC_program___Program___generate_allocation_iroutines_7(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
91 typedef void (*OC_program___Program___generate_allocation_iroutines_7_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
92 typedef void (*CLOS_program___Program___with_each_iroutines_0
)(struct stack_frame_t
*, val_t
, val_t
);
93 static const char * const LOCATE_program___Program___with_each_iroutines
= "program::Program::with_each_iroutines";
94 void program___Program___with_each_iroutines(val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
95 typedef void (*program___Program___with_each_iroutines_t
)(val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
96 typedef void (*CLOS_OC_program___Program___with_each_iroutines_1_0
)(struct stack_frame_t
*);
97 void OC_program___Program___with_each_iroutines_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
98 typedef void (*OC_program___Program___with_each_iroutines_1_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
99 typedef void (*CLOS_OC_program___Program___with_each_iroutines_2_0
)(struct stack_frame_t
*);
100 void OC_program___Program___with_each_iroutines_2(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
101 typedef void (*OC_program___Program___with_each_iroutines_2_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
102 typedef void (*CLOS_OC_program___Program___with_each_iroutines_3_0
)(struct stack_frame_t
*);
103 void OC_program___Program___with_each_iroutines_3(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
104 typedef void (*OC_program___Program___with_each_iroutines_3_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
105 typedef void (*CLOS_OC_program___Program___with_each_iroutines_6_0
)(struct stack_frame_t
*);
106 void OC_program___Program___with_each_iroutines_6(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
107 typedef void (*OC_program___Program___with_each_iroutines_6_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
108 typedef void (*CLOS_program___Program___with_each_methods_0
)(struct stack_frame_t
*, val_t
);
109 static const char * const LOCATE_program___Program___with_each_methods
= "program::Program::with_each_methods";
110 void program___Program___with_each_methods(val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
111 typedef void (*program___Program___with_each_methods_t
)(val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
112 typedef void (*CLOS_OC_program___Program___with_each_methods_1_0
)(struct stack_frame_t
*);
113 void OC_program___Program___with_each_methods_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
114 typedef void (*OC_program___Program___with_each_methods_1_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
115 typedef void (*CLOS_OC_program___Program___with_each_methods_2_0
)(struct stack_frame_t
*);
116 void OC_program___Program___with_each_methods_2(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
117 typedef void (*OC_program___Program___with_each_methods_2_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
118 typedef void (*CLOS_OC_program___Program___with_each_methods_3_0
)(struct stack_frame_t
*);
119 void OC_program___Program___with_each_methods_3(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
120 typedef void (*OC_program___Program___with_each_methods_3_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
121 typedef void (*CLOS_program___Program___with_each_live_local_classes_0
)(struct stack_frame_t
*, val_t
);
122 static const char * const LOCATE_program___Program___with_each_live_local_classes
= "program::Program::with_each_live_local_classes";
123 void program___Program___with_each_live_local_classes(val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
124 typedef void (*program___Program___with_each_live_local_classes_t
)(val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
125 typedef void (*CLOS_OC_program___Program___with_each_live_local_classes_1_0
)(struct stack_frame_t
*);
126 void OC_program___Program___with_each_live_local_classes_1(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
127 typedef void (*OC_program___Program___with_each_live_local_classes_1_t
)(struct stack_frame_t
*closctx
, val_t p0
, struct stack_frame_t
*closctx_param
, fun_t clos_fun0
);
128 static const char * const LOCATE_program___Program___init
= "program::Program::init";
129 void program___Program___init(val_t p0
, val_t p1
, val_t p2
, int* init_table
);
130 typedef void (*program___Program___init_t
)(val_t p0
, val_t p1
, val_t p2
, int* init_table
);
131 val_t
NEW_Program_program___Program___init(val_t p0
, val_t p1
);
132 static const char * const LOCATE_program___MMLocalClass___init_var_iroutine
= "program::MMLocalClass::init_var_iroutine";
133 val_t
program___MMLocalClass___init_var_iroutine(val_t p0
);
134 typedef val_t (*program___MMLocalClass___init_var_iroutine_t
)(val_t p0
);
135 static const char * const LOCATE_program___MMLocalClass___init_var_iroutine__eq
= "program::MMLocalClass::init_var_iroutine=";
136 void program___MMLocalClass___init_var_iroutine__eq(val_t p0
, val_t p1
);
137 typedef void (*program___MMLocalClass___init_var_iroutine__eq_t
)(val_t p0
, val_t p1
);
138 static const char * const LOCATE_program___MMLocalClass___checknew_iroutine
= "program::MMLocalClass::checknew_iroutine";
139 val_t
program___MMLocalClass___checknew_iroutine(val_t p0
);
140 typedef val_t (*program___MMLocalClass___checknew_iroutine_t
)(val_t p0
);
141 static const char * const LOCATE_program___MMLocalClass___checknew_iroutine__eq
= "program::MMLocalClass::checknew_iroutine=";
142 void program___MMLocalClass___checknew_iroutine__eq(val_t p0
, val_t p1
);
143 typedef void (*program___MMLocalClass___checknew_iroutine__eq_t
)(val_t p0
, val_t p1
);
144 static const char * const LOCATE_program___MMLocalClass___new_instance_iroutine
= "program::MMLocalClass::new_instance_iroutine";
145 val_t
program___MMLocalClass___new_instance_iroutine(val_t p0
);
146 typedef val_t (*program___MMLocalClass___new_instance_iroutine_t
)(val_t p0
);
147 val_t
NEW_MMLocalClass_abstractmetamodel___MMLocalClass___init(val_t p0
, val_t p1
, val_t p2
);