1 #include "nit.common.h"
2 extern const int COLOR_separate_erasure_compiler__ToolContext___64dopt_erasure
;
3 val
* separate_erasure_compiler__ToolContext__opt_erasure(val
* self
);
4 void separate_erasure_compiler__ToolContext__opt_erasure_61d(val
* self
, val
* p0
);
5 extern const int COLOR_separate_erasure_compiler__ToolContext___64dopt_no_check_erasure_cast
;
6 val
* separate_erasure_compiler__ToolContext__opt_no_check_erasure_cast(val
* self
);
7 void separate_erasure_compiler__ToolContext__opt_no_check_erasure_cast_61d(val
* self
, val
* p0
);
8 extern const int COLOR_separate_erasure_compiler__ToolContext__init
;
9 extern const int COLOR_toolcontext__ToolContext__option_context
;
10 extern const int COLOR_separate_erasure_compiler__ToolContext__opt_erasure
;
11 extern const int COLOR_separate_erasure_compiler__ToolContext__opt_no_check_erasure_cast
;
12 val
* NEW_array__Array(const struct type
* type
);
13 extern const struct type type_array__Arrayopts__Option
;
14 val
* NEW_array__NativeArray(int length
, const struct type
* type
);
15 extern const struct type type_array__NativeArrayopts__Option
;
16 extern const int COLOR_array__Array__with_native
;
17 extern const int COLOR_opts__OptionContext__add_option
;
18 void separate_erasure_compiler__ToolContext__init(val
* self
);
19 extern const int COLOR_time__Object__get_time
;
20 extern const int COLOR_modelbuilder__ModelBuilder__toolcontext
;
21 val
* string__NativeString__to_s_with_length(char* self
, long p0
);
22 extern const int COLOR_toolcontext__ToolContext__info
;
23 val
* NEW_separate_erasure_compiler__SeparateErasureCompiler(const struct type
* type
);
24 extern const struct type type_separate_erasure_compiler__SeparateErasureCompiler
;
25 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__init
;
26 extern const int COLOR_abstract_compiler__AbstractCompiler__compile_header
;
27 extern const int COLOR_mmodule__MModule__name
;
28 extern const struct type type_array__Arraykernel__Object
;
29 extern const struct type type_array__NativeArraykernel__Object
;
30 extern const int COLOR_string__Object__to_s
;
31 extern const int COLOR_abstract_compiler__AbstractCompiler__new_file
;
32 extern const int COLOR_separate_compiler__SeparateCompiler__do_property_coloring
;
33 extern const int COLOR_mmodule__MModule__in_importation
;
34 extern const int COLOR_poset__POSetElement__greaters
;
35 extern const int COLOR_abstract_collection__Collection__iterator
;
36 extern const int COLOR_abstract_collection__Iterator__is_ok
;
37 extern const int COLOR_abstract_collection__Iterator__item
;
38 extern const int COLOR_model__MModule__intro_mclasses
;
39 extern const int COLOR_separate_compiler__SeparateCompiler__compile_class_to_c
;
40 extern const int COLOR_abstract_collection__Iterator__next
;
41 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__vt_layout
;
42 extern const int COLOR_layout_builders__Layout__pos
;
43 extern const int COLOR_separate_compiler__SeparateCompiler__compile_color_consts
;
44 extern const int COLOR_abstract_compiler__AbstractCompiler__compile_main_function
;
45 extern const int COLOR_separate_compiler__SeparateCompiler__compile_module_to_c
;
46 extern const int COLOR_abstract_compiler__AbstractCompiler__display_stats
;
47 val
* BOX_kernel__Int(long);
48 extern const int COLOR_abstract_compiler__ModelBuilder__write_and_make
;
49 void separate_erasure_compiler__ModelBuilder__run_separate_erasure_compiler(val
* self
, val
* p0
, val
* p1
);
50 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler___64dclass_layout
;
51 val
* separate_erasure_compiler__SeparateErasureCompiler__class_layout(val
* self
);
52 void separate_erasure_compiler__SeparateErasureCompiler__class_layout_61d(val
* self
, val
* p0
);
53 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler___64dvt_layout
;
54 val
* separate_erasure_compiler__SeparateErasureCompiler__vt_layout(val
* self
);
55 void separate_erasure_compiler__SeparateErasureCompiler__vt_layout_61d(val
* self
, val
* p0
);
56 extern const int COLOR_separate_compiler__SeparateCompiler__init
;
57 val
* NEW_hash_collection__HashSet(const struct type
* type
);
58 extern const struct type type_hash_collection__HashSetmodel__MClass
;
59 extern const int COLOR_modelbuilder__ModelBuilder__model
;
60 extern const int COLOR_model__Model__mclasses
;
61 extern const int COLOR_hash_collection__HashSet__from
;
62 val
* NEW_layout_builders__MClassColorer(const struct type
* type
);
63 extern const struct type type_layout_builders__MClassColorer
;
64 extern const int COLOR_layout_builders__MClassColorer__init
;
65 extern const int COLOR_abstract_compiler__AbstractCompiler__modelbuilder
;
66 extern const int COLOR_separate_compiler__ToolContext__opt_phmod_typing
;
67 extern const int COLOR_opts__Option__value
;
68 val
* NEW_layout_builders__MClassHasher(const struct type
* type
);
69 extern const struct type type_layout_builders__MClassHasher
;
70 val
* NEW_layout_builders__PHModOperator(const struct type
* type
);
71 extern const struct type type_layout_builders__PHModOperator
;
72 extern const int COLOR_layout_builders__PHModOperator__init
;
73 extern const int COLOR_layout_builders__MClassHasher__init
;
74 extern const int COLOR_layout_builders__TypingLayoutBuilder__build_layout
;
75 extern const int COLOR_separate_compiler__ToolContext__opt_phand_typing
;
76 val
* NEW_layout_builders__PHAndOperator(const struct type
* type
);
77 extern const struct type type_layout_builders__PHAndOperator
;
78 extern const int COLOR_layout_builders__PHAndOperator__init
;
79 extern const int COLOR_separate_compiler__ToolContext__opt_bm_typing
;
80 val
* NEW_layout_builders__MClassBMizer(const struct type
* type
);
81 extern const struct type type_layout_builders__MClassBMizer
;
82 extern const int COLOR_layout_builders__MClassBMizer__init
;
83 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__class_layout_61d
;
84 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__build_class_typing_tables
;
85 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__class_tables_61d
;
86 val
* NEW_hash_collection__HashMap(const struct type
* type
);
87 extern const struct type type_hash_collection__HashMapmodel__MClassabstract_collection__Setmodel__MVirtualTypeProp
;
88 extern const int COLOR_hash_collection__HashMap__init
;
89 extern const struct type type_hash_collection__HashSetmodel__MVirtualTypeProp
;
90 extern const int COLOR_hash_collection__HashSet__init
;
91 extern const int COLOR_abstract_collection__Map___91d_93d_61d
;
92 extern const int COLOR_abstract_compiler__AbstractCompiler__mainmodule
;
93 extern const int COLOR_abstract_compiler__MModule__properties
;
94 extern const struct type type_model__MVirtualTypeProp
;
95 extern const int COLOR_abstract_collection__MapRead___91d_93d
;
96 extern const int COLOR_abstract_collection__SimpleCollection__add
;
97 val
* NEW_layout_builders__MPropertyColorer(const struct type
* type
);
98 extern const struct type type_layout_builders__MPropertyColorermodel__MVirtualTypeProp
;
99 extern const int COLOR_layout_builders__MPropertyColorer__init
;
100 extern const int COLOR_layout_builders__PropertyLayoutBuilder__build_layout
;
101 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__build_vt_tables
;
102 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__vt_tables_61d
;
103 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__vt_layout_61d
;
104 void separate_erasure_compiler__SeparateErasureCompiler__init(val
* self
, val
* p0
, val
* p1
, val
* p2
);
105 extern const struct type type_hash_collection__HashMapmodel__MClassarray__Arraynullable_model__MPropDef
;
106 extern const struct type type_array__Arraynullable_model__MPropDef
;
107 extern const int COLOR_array__Array__init
;
108 extern const struct type type_array__Arraymodel__MClass
;
109 extern const int COLOR_model__MModule__flatten_mclass_hierarchy
;
110 extern const int COLOR_abstract_collection__Collection__has
;
111 extern const int COLOR_model__MClass__in_hierarchy
;
112 extern const int COLOR_array__Collection__to_a
;
113 extern const int COLOR_model__MModule__linearize_mclasses
;
114 extern const int COLOR_kernel__Object___61d_61d
;
115 extern const int COLOR_abstract_collection__Collection__length
;
116 extern const struct type type_kernel__Int
;
117 val
* NEW_range__Range(const struct type
* type
);
118 extern const struct type type_range__Rangekernel__Int
;
119 extern const int COLOR_range__Range__without_last
;
120 extern const int COLOR_abstract_collection__Sequence___91d_93d_61d
;
121 extern const int COLOR_model__MProperty__mpropdefs
;
122 extern const int COLOR_model__MPropDef__mclassdef
;
123 extern const int COLOR_model__MClassDef__mclass
;
124 val
* separate_erasure_compiler__SeparateErasureCompiler__build_vt_tables(val
* self
, val
* p0
, val
* p1
);
125 extern const struct type type_hash_collection__HashMapmodel__MClassarray__Arraynullable_model__MClass
;
126 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__class_layout
;
127 extern const struct type type_array__Arraynullable_model__MClass
;
128 extern const struct type type_layout_builders__PHLayoutmodel__MClassmodel__MClass
;
129 extern const int COLOR_layout_builders__PHLayout__hashes
;
130 val
* separate_erasure_compiler__SeparateErasureCompiler__build_class_typing_tables(val
* self
, val
* p0
);
131 extern const int COLOR_abstract_compiler__AbstractCompiler__header
;
132 extern const int COLOR_abstract_compiler__CodeWriter__add_decl
;
133 extern const int COLOR_separate_compiler__SeparateCompiler__compile_header_attribute_structs
;
134 extern const struct type type_layout_builders__PHLayoutmodel__MClassmodel__MVirtualTypeProp
;
135 void separate_erasure_compiler__SeparateErasureCompiler__compile_header_structs(val
* self
);
136 extern const int COLOR_model__MClass__intro
;
137 extern const int COLOR_model__MClassDef__bound_mtype
;
138 extern const int COLOR_abstract_compiler__MClass__c_name
;
139 extern const int COLOR_separate_compiler__MClass__c_instance_name
;
140 extern const int COLOR_separate_compiler__SeparateCompiler__method_tables
;
141 extern const int COLOR_separate_compiler__SeparateCompiler__attr_tables
;
142 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__class_tables
;
143 extern const int COLOR_abstract_compiler__AbstractCompiler__new_visitor
;
144 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__add_decl
;
145 extern const int COLOR_abstract_compiler__AbstractCompiler__provide_declaration
;
146 extern const int COLOR_layout_builders__Layout__ids
;
147 extern const int COLOR_model__MClass__name
;
148 extern const int COLOR_separate_compiler__SeparateCompiler__box_kind_of
;
149 extern const int COLOR_layout_builders__PHLayout__masks
;
150 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__build_class_vts_table
;
151 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__require_declaration
;
152 extern const int COLOR_abstract_collection__SequenceRead___91d_93d
;
153 extern const int COLOR_abstract_compiler__MType__ctype
;
154 extern const int COLOR_kernel__Object___33d_61d
;
155 extern const int COLOR_abstract_compiler__MPropDef__c_name
;
156 extern const int COLOR_model__MClass__intro_mmodule
;
157 extern const int COLOR_model__MClassType__mclass
;
158 extern const int COLOR_model__MClass__kind
;
159 extern const int COLOR_model__Object__extern_kind
;
160 extern const int COLOR_abstract_compiler__MType__c_name
;
161 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__add
;
162 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__new_named_var
;
163 extern const int COLOR_abstract_compiler__RuntimeVariable__is_exact_61d
;
164 extern const int COLOR_model__MClassType__arguments
;
165 extern const int COLOR_abstract_collection__Collection__first
;
166 extern const int COLOR_abstract_compiler__AbstractCompiler__generate_init_attr
;
167 void separate_erasure_compiler__SeparateErasureCompiler__compile_class_to_c(val
* self
, val
* p0
);
168 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__vt_tables
;
169 extern const int COLOR_abstract_collection__Collection__is_empty
;
170 extern const struct type type_model__MVirtualTypeDef
;
171 extern const int COLOR_model__MVirtualTypeDef__bound
;
172 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__retrieve_vt_bound
;
173 extern const struct type type_model__MNullableType
;
174 extern const int COLOR_model__MNullableType__mtype
;
175 extern const struct type type_model__MClassType
;
176 short int separate_erasure_compiler__SeparateErasureCompiler__build_class_vts_table(val
* self
, val
* p0
);
177 extern const int COLOR_file__Object__print
;
178 extern const struct type type_model__MVirtualType
;
179 extern const int COLOR_model__MType__anchor_to
;
180 extern const struct type type_model__MParameterType
;
181 val
* separate_erasure_compiler__SeparateErasureCompiler__retrieve_vt_bound(val
* self
, val
* p0
, val
* p1
);
182 val
* NEW_separate_erasure_compiler__SeparateErasureCompilerVisitor(const struct type
* type
);
183 extern const struct type type_separate_erasure_compiler__SeparateErasureCompilerVisitor
;
184 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__init
;
185 extern const int COLOR_abstract_compiler__AbstractCompiler_VTVISITOR
;
186 val
* separate_erasure_compiler__SeparateErasureCompiler__new_visitor(val
* self
);
187 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler___64dclass_tables
;
188 val
* separate_erasure_compiler__SeparateErasureCompiler__class_tables(val
* self
);
189 void separate_erasure_compiler__SeparateErasureCompiler__class_tables_61d(val
* self
, val
* p0
);
190 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler___64dvt_tables
;
191 val
* separate_erasure_compiler__SeparateErasureCompiler__vt_tables(val
* self
);
192 void separate_erasure_compiler__SeparateErasureCompiler__vt_tables_61d(val
* self
, val
* p0
);
193 extern const int COLOR_abstract_collection__MapRead__iterator
;
194 extern const int COLOR_abstract_collection__MapIterator__is_ok
;
195 extern const int COLOR_abstract_collection__MapIterator__key
;
196 extern const int COLOR_abstract_collection__MapIterator__item
;
197 extern const int COLOR_abstract_collection__MapIterator__next
;
198 void separate_erasure_compiler__SeparateErasureCompiler__display_sizes(val
* self
);
199 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompilerVisitor__compile_callsite
;
200 extern const int COLOR_typing__CallSite__erasure_cast
;
201 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__compiler
;
202 extern const int COLOR_typing__CallSite__msignature
;
203 extern const int COLOR_model__MSignature__return_mtype
;
204 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__type_test
;
205 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__add_abort
;
206 val
* separate_erasure_compiler__SeparateErasureCompilerVisitor__compile_callsite(val
* self
, val
* p0
, val
* p1
);
207 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__new_expr
;
208 val
* separate_erasure_compiler__SeparateErasureCompilerVisitor__init_instance(val
* self
, val
* p0
);
209 extern const int COLOR_string__Object__inspect
;
210 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__bool_type
;
211 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__new_var
;
212 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__get_name
;
213 extern const int COLOR_separate_compiler__SeparateCompilerVisitor__maybe_null
;
214 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__frame
;
215 extern const int COLOR_abstract_compiler__Frame__mpropdef
;
216 extern const int COLOR_model__MClassDef__mmodule
;
217 extern const int COLOR_model__MType__resolve_for
;
218 extern const int COLOR_abstract_compiler__RuntimeVariable__mcasttype
;
219 extern const int COLOR_model__MType__is_subtype
;
220 extern const int COLOR_abstract_compiler__ToolContext__opt_typing_test_metrics
;
221 extern const int COLOR_abstract_compiler__AbstractCompiler__count_type_test_skipped
;
222 extern const int COLOR_abstract_compiler__RuntimeVariable__mtype
;
223 extern const int COLOR_array__Array__with_capacity
;
224 extern const int COLOR_abstract_compiler__AbstractCompiler__count_type_test_resolved
;
225 extern const int COLOR_abstract_compiler__Frame__arguments
;
226 extern const int COLOR_model__MVirtualType__mproperty
;
227 extern const int COLOR_separate_compiler__MProperty__const_color
;
228 extern const int COLOR_abstract_compiler__AbstractCompiler__count_type_test_unresolved
;
229 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__debug
;
230 val
* separate_erasure_compiler__SeparateErasureCompilerVisitor__type_test(val
* self
, val
* p0
, val
* p1
, val
* p2
);
231 val
* separate_erasure_compiler__SeparateErasureCompilerVisitor__class_name_string(val
* self
, val
* p0
);
232 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__get_class
;
233 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__anchor
;
234 extern const struct type type_array__Arraymodel__MType
;
235 extern const struct type type_array__NativeArraymodel__MType
;
236 extern const int COLOR_model__MClass__get_mtype
;
237 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__init_instance
;
238 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__object_type
;
239 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__autobox
;
240 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__int_instance
;
241 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__get_property
;
242 extern const struct type type_array__Arrayabstract_compiler__RuntimeVariable
;
243 extern const struct type type_array__NativeArrayabstract_compiler__RuntimeVariable
;
244 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__send
;
245 val
* separate_erasure_compiler__SeparateErasureCompilerVisitor__array_instance(val
* self
, val
* p0
, val
* p1
);
246 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__ret
;
247 void separate_erasure_compiler__SeparateErasureCompilerVisitor__calloc_array(val
* self
, val
* p0
, val
* p1
);