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