1 /* This C header file is generated by NIT to compile modules and programs that requires icode_tools. */
2 #ifndef icode_tools_sep
3 #define icode_tools_sep
4 #include "icode_builder._sep.h"
5 #include <nit_common.h>
7 extern const classtable_elt_t VFT_ICodeVisitor
[];
9 extern const classtable_elt_t VFT_ICodeDupContext
[];
10 extern const char *LOCATE_icode_tools
;
11 extern const int SFT_icode_tools
[];
12 #define ID_ICodeVisitor (SFT_icode_tools[0])
13 #define COLOR_ICodeVisitor (SFT_icode_tools[1])
14 #define ATTR_icode_tools___ICodeVisitor____current_icode(recv) ATTR(recv, (SFT_icode_tools[2] + 0))
15 #define INIT_TABLE_POS_ICodeVisitor (SFT_icode_tools[3] + 0)
16 #define CALL_icode_tools___ICodeVisitor___visit_iregister_read(recv) ((icode_tools___ICodeVisitor___visit_iregister_read_t)CALL((recv), (SFT_icode_tools[3] + 1)))
17 #define CALL_icode_tools___ICodeVisitor___visit_iregister_write(recv) ((icode_tools___ICodeVisitor___visit_iregister_write_t)CALL((recv), (SFT_icode_tools[3] + 2)))
18 #define CALL_icode_tools___ICodeVisitor___current_icode(recv) ((icode_tools___ICodeVisitor___current_icode_t)CALL((recv), (SFT_icode_tools[3] + 3)))
19 #define CALL_icode_tools___ICodeVisitor___visit_icode(recv) ((icode_tools___ICodeVisitor___visit_icode_t)CALL((recv), (SFT_icode_tools[3] + 4)))
20 #define CALL_icode_tools___ICodeVisitor___visit_closure_defs(recv) ((icode_tools___ICodeVisitor___visit_closure_defs_t)CALL((recv), (SFT_icode_tools[3] + 5)))
21 #define CALL_icode_tools___ICodeVisitor___visit_iroutine(recv) ((icode_tools___ICodeVisitor___visit_iroutine_t)CALL((recv), (SFT_icode_tools[3] + 6)))
22 #define CALL_icode_tools___ICodeVisitor___init(recv) ((icode_tools___ICodeVisitor___init_t)CALL((recv), (SFT_icode_tools[3] + 7)))
23 #define ATTR_icode_tools___ICodeBuilder____current_inlining(recv) ATTR(recv, (SFT_icode_tools[4] + 0))
24 #define CALL_icode_tools___ICodeBuilder___is_currently_inlining_routine(recv) ((icode_tools___ICodeBuilder___is_currently_inlining_routine_t)CALL((recv), (SFT_icode_tools[5] + 0)))
25 #define CALL_icode_tools___ICodeBuilder___inline_routine(recv) ((icode_tools___ICodeBuilder___inline_routine_t)CALL((recv), (SFT_icode_tools[5] + 1)))
26 #define ID_ICodeDupContext (SFT_icode_tools[6])
27 #define COLOR_ICodeDupContext (SFT_icode_tools[7])
28 #define ATTR_icode_tools___ICodeDupContext____registers(recv) ATTR(recv, (SFT_icode_tools[8] + 0))
29 #define ATTR_icode_tools___ICodeDupContext____marks(recv) ATTR(recv, (SFT_icode_tools[8] + 1))
30 #define ATTR_icode_tools___ICodeDupContext____closures(recv) ATTR(recv, (SFT_icode_tools[8] + 2))
31 #define ATTR_icode_tools___ICodeDupContext____icb(recv) ATTR(recv, (SFT_icode_tools[8] + 3))
32 #define INIT_TABLE_POS_ICodeDupContext (SFT_icode_tools[9] + 0)
33 #define CALL_icode_tools___ICodeDupContext___dup_ireg(recv) ((icode_tools___ICodeDupContext___dup_ireg_t)CALL((recv), (SFT_icode_tools[9] + 1)))
34 #define CALL_icode_tools___ICodeDupContext___dup_iregs(recv) ((icode_tools___ICodeDupContext___dup_iregs_t)CALL((recv), (SFT_icode_tools[9] + 2)))
35 #define CALL_icode_tools___ICodeDupContext___dup_mark(recv) ((icode_tools___ICodeDupContext___dup_mark_t)CALL((recv), (SFT_icode_tools[9] + 3)))
36 #define CALL_icode_tools___ICodeDupContext___init(recv) ((icode_tools___ICodeDupContext___init_t)CALL((recv), (SFT_icode_tools[9] + 4)))
37 #define CALL_icode_tools___ICode___dup_with(recv) ((icode_tools___ICode___dup_with_t)CALL((recv), (SFT_icode_tools[10] + 0)))
38 #define CALL_icode_tools___ICode___inner_dup_with(recv) ((icode_tools___ICode___inner_dup_with_t)CALL((recv), (SFT_icode_tools[10] + 1)))
39 #define CALL_icode_tools___ISeq___dup_seq_to(recv) ((icode_tools___ISeq___dup_seq_to_t)CALL((recv), (SFT_icode_tools[11] + 0)))
40 #define LOCATE_icode_tools___ICodeVisitor___visit_iregister_read "icode_tools::ICodeVisitor::visit_iregister_read"
41 void icode_tools___ICodeVisitor___visit_iregister_read(val_t p0
, val_t p1
, val_t p2
);
42 typedef void (*icode_tools___ICodeVisitor___visit_iregister_read_t
)(val_t p0
, val_t p1
, val_t p2
);
43 #define LOCATE_icode_tools___ICodeVisitor___visit_iregister_write "icode_tools::ICodeVisitor::visit_iregister_write"
44 void icode_tools___ICodeVisitor___visit_iregister_write(val_t p0
, val_t p1
, val_t p2
);
45 typedef void (*icode_tools___ICodeVisitor___visit_iregister_write_t
)(val_t p0
, val_t p1
, val_t p2
);
46 #define LOCATE_icode_tools___ICodeVisitor___current_icode "icode_tools::ICodeVisitor::current_icode"
47 val_t
icode_tools___ICodeVisitor___current_icode(val_t p0
);
48 typedef val_t (*icode_tools___ICodeVisitor___current_icode_t
)(val_t p0
);
49 #define LOCATE_icode_tools___ICodeVisitor___visit_icode "icode_tools::ICodeVisitor::visit_icode"
50 void icode_tools___ICodeVisitor___visit_icode(val_t p0
, val_t p1
);
51 typedef void (*icode_tools___ICodeVisitor___visit_icode_t
)(val_t p0
, val_t p1
);
52 #define LOCATE_icode_tools___ICodeVisitor___visit_closure_defs "icode_tools::ICodeVisitor::visit_closure_defs"
53 void icode_tools___ICodeVisitor___visit_closure_defs(val_t p0
, val_t p1
);
54 typedef void (*icode_tools___ICodeVisitor___visit_closure_defs_t
)(val_t p0
, val_t p1
);
55 #define LOCATE_icode_tools___ICodeVisitor___visit_iroutine "icode_tools::ICodeVisitor::visit_iroutine"
56 void icode_tools___ICodeVisitor___visit_iroutine(val_t p0
, val_t p1
);
57 typedef void (*icode_tools___ICodeVisitor___visit_iroutine_t
)(val_t p0
, val_t p1
);
58 #define LOCATE_icode_tools___ICodeVisitor___init "icode_tools::ICodeVisitor::init"
59 void icode_tools___ICodeVisitor___init(val_t p0
, int* init_table
);
60 typedef void (*icode_tools___ICodeVisitor___init_t
)(val_t p0
, int* init_table
);
61 val_t
NEW_ICodeVisitor_icode_tools___ICodeVisitor___init();
62 val_t
NEW_ICodeBuilder_icode_builder___ICodeBuilder___init(val_t p0
, val_t p1
);
63 #define LOCATE_icode_tools___ICodeBuilder___is_currently_inlining_routine "icode_tools::ICodeBuilder::is_currently_inlining_routine"
64 val_t
icode_tools___ICodeBuilder___is_currently_inlining_routine(val_t p0
, val_t p1
);
65 typedef val_t (*icode_tools___ICodeBuilder___is_currently_inlining_routine_t
)(val_t p0
, val_t p1
);
66 #define LOCATE_icode_tools___ICodeBuilder___inline_routine "icode_tools::ICodeBuilder::inline_routine"
67 val_t
icode_tools___ICodeBuilder___inline_routine(val_t p0
, val_t p1
, val_t p2
, val_t p3
);
68 typedef val_t (*icode_tools___ICodeBuilder___inline_routine_t
)(val_t p0
, val_t p1
, val_t p2
, val_t p3
);
69 #define LOCATE_icode_tools___ICodeDupContext___dup_ireg "icode_tools::ICodeDupContext::dup_ireg"
70 val_t
icode_tools___ICodeDupContext___dup_ireg(val_t p0
, val_t p1
);
71 typedef val_t (*icode_tools___ICodeDupContext___dup_ireg_t
)(val_t p0
, val_t p1
);
72 #define LOCATE_icode_tools___ICodeDupContext___dup_iregs "icode_tools::ICodeDupContext::dup_iregs"
73 val_t
icode_tools___ICodeDupContext___dup_iregs(val_t p0
, val_t p1
);
74 typedef val_t (*icode_tools___ICodeDupContext___dup_iregs_t
)(val_t p0
, val_t p1
);
75 #define LOCATE_icode_tools___ICodeDupContext___dup_mark "icode_tools::ICodeDupContext::dup_mark"
76 val_t
icode_tools___ICodeDupContext___dup_mark(val_t p0
, val_t p1
);
77 typedef val_t (*icode_tools___ICodeDupContext___dup_mark_t
)(val_t p0
, val_t p1
);
78 #define LOCATE_icode_tools___ICodeDupContext___init "icode_tools::ICodeDupContext::init"
79 void icode_tools___ICodeDupContext___init(val_t p0
, val_t p1
, int* init_table
);
80 typedef void (*icode_tools___ICodeDupContext___init_t
)(val_t p0
, val_t p1
, int* init_table
);
81 val_t
NEW_ICodeDupContext_icode_tools___ICodeDupContext___init(val_t p0
);
82 val_t
NEW_ICode_icode_base___ICode___init();
83 #define LOCATE_icode_tools___ICode___dup_with "icode_tools::ICode::dup_with"
84 void icode_tools___ICode___dup_with(val_t p0
, val_t p1
);
85 typedef void (*icode_tools___ICode___dup_with_t
)(val_t p0
, val_t p1
);
86 #define LOCATE_icode_tools___ICode___inner_dup_with "icode_tools::ICode::inner_dup_with"
87 val_t
icode_tools___ICode___inner_dup_with(val_t p0
, val_t p1
);
88 typedef val_t (*icode_tools___ICode___inner_dup_with_t
)(val_t p0
, val_t p1
);
89 val_t
NEW_ISeq_icode_base___ISeq___init();
90 #define LOCATE_icode_tools___ISeq___inner_dup_with "icode_tools::ISeq::(icode_tools::ICode::inner_dup_with)"
91 val_t
icode_tools___ISeq___inner_dup_with(val_t p0
, val_t p1
);
92 typedef val_t (*icode_tools___ISeq___inner_dup_with_t
)(val_t p0
, val_t p1
);
93 #define LOCATE_icode_tools___ISeq___dup_seq_to "icode_tools::ISeq::dup_seq_to"
94 void icode_tools___ISeq___dup_seq_to(val_t p0
, val_t p1
, val_t p2
);
95 typedef void (*icode_tools___ISeq___dup_seq_to_t
)(val_t p0
, val_t p1
, val_t p2
);
96 val_t
NEW_ILoop_icode_base___ILoop___init();
97 #define LOCATE_icode_tools___ILoop___inner_dup_with "icode_tools::ILoop::(icode_tools::ICode::inner_dup_with)"
98 val_t
icode_tools___ILoop___inner_dup_with(val_t p0
, val_t p1
);
99 typedef val_t (*icode_tools___ILoop___inner_dup_with_t
)(val_t p0
, val_t p1
);
100 val_t
NEW_IIf_icode_base___IIf___init(val_t p0
);
101 #define LOCATE_icode_tools___IIf___inner_dup_with "icode_tools::IIf::(icode_tools::ICode::inner_dup_with)"
102 val_t
icode_tools___IIf___inner_dup_with(val_t p0
, val_t p1
);
103 typedef val_t (*icode_tools___IIf___inner_dup_with_t
)(val_t p0
, val_t p1
);
104 val_t
NEW_IEscape_icode_base___IEscape___init(val_t p0
);
105 #define LOCATE_icode_tools___IEscape___inner_dup_with "icode_tools::IEscape::(icode_tools::ICode::inner_dup_with)"
106 val_t
icode_tools___IEscape___inner_dup_with(val_t p0
, val_t p1
);
107 typedef val_t (*icode_tools___IEscape___inner_dup_with_t
)(val_t p0
, val_t p1
);
108 val_t
NEW_IAbort_icode_base___IAbort___init(val_t p0
, val_t p1
);
109 #define LOCATE_icode_tools___IAbort___inner_dup_with "icode_tools::IAbort::(icode_tools::ICode::inner_dup_with)"
110 val_t
icode_tools___IAbort___inner_dup_with(val_t p0
, val_t p1
);
111 typedef val_t (*icode_tools___IAbort___inner_dup_with_t
)(val_t p0
, val_t p1
);
112 val_t
NEW_ICall_icode_base___ICall___init(val_t p0
, val_t p1
);
113 #define LOCATE_icode_tools___ICall___inner_dup_with "icode_tools::ICall::(icode_tools::ICode::inner_dup_with)"
114 val_t
icode_tools___ICall___inner_dup_with(val_t p0
, val_t p1
);
115 typedef val_t (*icode_tools___ICall___inner_dup_with_t
)(val_t p0
, val_t p1
);
116 val_t
NEW_ISuper_icode_base___ISuper___init(val_t p0
, val_t p1
);
117 #define LOCATE_icode_tools___ISuper___inner_dup_with "icode_tools::ISuper::(icode_tools::ICode::inner_dup_with)"
118 val_t
icode_tools___ISuper___inner_dup_with(val_t p0
, val_t p1
);
119 typedef val_t (*icode_tools___ISuper___inner_dup_with_t
)(val_t p0
, val_t p1
);
120 val_t
NEW_INew_icode_base___INew___init(val_t p0
, val_t p1
, val_t p2
);
121 #define LOCATE_icode_tools___INew___inner_dup_with "icode_tools::INew::(icode_tools::ICode::inner_dup_with)"
122 val_t
icode_tools___INew___inner_dup_with(val_t p0
, val_t p1
);
123 typedef val_t (*icode_tools___INew___inner_dup_with_t
)(val_t p0
, val_t p1
);
124 val_t
NEW_IAllocateInstance_icode_base___IAllocateInstance___init(val_t p0
);
125 #define LOCATE_icode_tools___IAllocateInstance___inner_dup_with "icode_tools::IAllocateInstance::(icode_tools::ICode::inner_dup_with)"
126 val_t
icode_tools___IAllocateInstance___inner_dup_with(val_t p0
, val_t p1
);
127 typedef val_t (*icode_tools___IAllocateInstance___inner_dup_with_t
)(val_t p0
, val_t p1
);
128 val_t
NEW_IStaticCall_icode_base___IStaticCall___init(val_t p0
, val_t p1
);
129 #define LOCATE_icode_tools___IStaticCall___inner_dup_with "icode_tools::IStaticCall::(icode_tools::ICode::inner_dup_with)"
130 val_t
icode_tools___IStaticCall___inner_dup_with(val_t p0
, val_t p1
);
131 typedef val_t (*icode_tools___IStaticCall___inner_dup_with_t
)(val_t p0
, val_t p1
);
132 val_t
NEW_ICheckInstance_icode_base___ICheckInstance___init(val_t p0
, val_t p1
);
133 #define LOCATE_icode_tools___ICheckInstance___inner_dup_with "icode_tools::ICheckInstance::(icode_tools::ICode::inner_dup_with)"
134 val_t
icode_tools___ICheckInstance___inner_dup_with(val_t p0
, val_t p1
);
135 typedef val_t (*icode_tools___ICheckInstance___inner_dup_with_t
)(val_t p0
, val_t p1
);
136 val_t
NEW_IInitAttributes_icode_base___IInitAttributes___init(val_t p0
, val_t p1
);
137 #define LOCATE_icode_tools___IInitAttributes___inner_dup_with "icode_tools::IInitAttributes::(icode_tools::ICode::inner_dup_with)"
138 val_t
icode_tools___IInitAttributes___inner_dup_with(val_t p0
, val_t p1
);
139 typedef val_t (*icode_tools___IInitAttributes___inner_dup_with_t
)(val_t p0
, val_t p1
);
140 val_t
NEW_IClosCall_icode_base___IClosCall___init(val_t p0
, val_t p1
);
141 #define LOCATE_icode_tools___IClosCall___dup_with "icode_tools::IClosCall::(icode_tools::ICode::dup_with)"
142 void icode_tools___IClosCall___dup_with(val_t p0
, val_t p1
);
143 typedef void (*icode_tools___IClosCall___dup_with_t
)(val_t p0
, val_t p1
);
144 val_t
NEW_INative_icode_base___INative___init(val_t p0
, val_t p1
);
145 #define LOCATE_icode_tools___INative___inner_dup_with "icode_tools::INative::(icode_tools::ICode::inner_dup_with)"
146 val_t
icode_tools___INative___inner_dup_with(val_t p0
, val_t p1
);
147 typedef val_t (*icode_tools___INative___inner_dup_with_t
)(val_t p0
, val_t p1
);
148 val_t
NEW_IMove_icode_base___IMove___init(val_t p0
, val_t p1
);
149 #define LOCATE_icode_tools___IMove___inner_dup_with "icode_tools::IMove::(icode_tools::ICode::inner_dup_with)"
150 val_t
icode_tools___IMove___inner_dup_with(val_t p0
, val_t p1
);
151 typedef val_t (*icode_tools___IMove___inner_dup_with_t
)(val_t p0
, val_t p1
);
152 val_t
NEW_IAttrRead_icode_base___IAttrRead___init(val_t p0
, val_t p1
);
153 #define LOCATE_icode_tools___IAttrRead___inner_dup_with "icode_tools::IAttrRead::(icode_tools::ICode::inner_dup_with)"
154 val_t
icode_tools___IAttrRead___inner_dup_with(val_t p0
, val_t p1
);
155 typedef val_t (*icode_tools___IAttrRead___inner_dup_with_t
)(val_t p0
, val_t p1
);
156 val_t
NEW_IAttrWrite_icode_base___IAttrWrite___init(val_t p0
, val_t p1
, val_t p2
);
157 #define LOCATE_icode_tools___IAttrWrite___inner_dup_with "icode_tools::IAttrWrite::(icode_tools::ICode::inner_dup_with)"
158 val_t
icode_tools___IAttrWrite___inner_dup_with(val_t p0
, val_t p1
);
159 typedef val_t (*icode_tools___IAttrWrite___inner_dup_with_t
)(val_t p0
, val_t p1
);
160 val_t
NEW_IAttrIsset_icode_base___IAttrIsset___init(val_t p0
, val_t p1
);
161 #define LOCATE_icode_tools___IAttrIsset___inner_dup_with "icode_tools::IAttrIsset::(icode_tools::ICode::inner_dup_with)"
162 val_t
icode_tools___IAttrIsset___inner_dup_with(val_t p0
, val_t p1
);
163 typedef val_t (*icode_tools___IAttrIsset___inner_dup_with_t
)(val_t p0
, val_t p1
);
164 val_t
NEW_ITypeCheck_icode_base___ITypeCheck___init(val_t p0
, val_t p1
);
165 #define LOCATE_icode_tools___ITypeCheck___inner_dup_with "icode_tools::ITypeCheck::(icode_tools::ICode::inner_dup_with)"
166 val_t
icode_tools___ITypeCheck___inner_dup_with(val_t p0
, val_t p1
);
167 typedef val_t (*icode_tools___ITypeCheck___inner_dup_with_t
)(val_t p0
, val_t p1
);
168 val_t
NEW_IIs_icode_base___IIs___init(val_t p0
, val_t p1
);
169 #define LOCATE_icode_tools___IIs___inner_dup_with "icode_tools::IIs::(icode_tools::ICode::inner_dup_with)"
170 val_t
icode_tools___IIs___inner_dup_with(val_t p0
, val_t p1
);
171 typedef val_t (*icode_tools___IIs___inner_dup_with_t
)(val_t p0
, val_t p1
);
172 val_t
NEW_INot_icode_base___INot___init(val_t p0
);
173 #define LOCATE_icode_tools___INot___inner_dup_with "icode_tools::INot::(icode_tools::ICode::inner_dup_with)"
174 val_t
icode_tools___INot___inner_dup_with(val_t p0
, val_t p1
);
175 typedef val_t (*icode_tools___INot___inner_dup_with_t
)(val_t p0
, val_t p1
);
176 val_t
NEW_IOnce_icode_base___IOnce___init();
177 #define LOCATE_icode_tools___IOnce___inner_dup_with "icode_tools::IOnce::(icode_tools::ICode::inner_dup_with)"
178 val_t
icode_tools___IOnce___inner_dup_with(val_t p0
, val_t p1
);
179 typedef val_t (*icode_tools___IOnce___inner_dup_with_t
)(val_t p0
, val_t p1
);
180 val_t
NEW_IHasClos_icode_base___IHasClos___init(val_t p0
);
181 #define LOCATE_icode_tools___IHasClos___inner_dup_with "icode_tools::IHasClos::(icode_tools::ICode::inner_dup_with)"
182 val_t
icode_tools___IHasClos___inner_dup_with(val_t p0
, val_t p1
);
183 typedef val_t (*icode_tools___IHasClos___inner_dup_with_t
)(val_t p0
, val_t p1
);