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 extern const int COLOR_abstract_compiler__ModelBuilder__write_and_make
;
48 void separate_erasure_compiler__ModelBuilder__run_separate_erasure_compiler(val
* self
, val
* p0
, val
* p1
);
49 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler___64dclass_layout
;
50 val
* separate_erasure_compiler__SeparateErasureCompiler__class_layout(val
* self
);
51 void separate_erasure_compiler__SeparateErasureCompiler__class_layout_61d(val
* self
, val
* p0
);
52 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler___64dvt_layout
;
53 val
* separate_erasure_compiler__SeparateErasureCompiler__vt_layout(val
* self
);
54 void separate_erasure_compiler__SeparateErasureCompiler__vt_layout_61d(val
* self
, val
* p0
);
55 extern const int COLOR_separate_compiler__SeparateCompiler__init
;
56 val
* NEW_hash_collection__HashSet(const struct type
* type
);
57 extern const struct type type_hash_collection__HashSetmodel__MClass
;
58 extern const int COLOR_modelbuilder__ModelBuilder__model
;
59 extern const int COLOR_model__Model__mclasses
;
60 extern const int COLOR_hash_collection__HashSet__from
;
61 val
* NEW_layout_builders__MClassColorer(const struct type
* type
);
62 extern const struct type type_layout_builders__MClassColorer
;
63 extern const int COLOR_layout_builders__MClassColorer__init
;
64 extern const int COLOR_abstract_compiler__AbstractCompiler__modelbuilder
;
65 extern const int COLOR_separate_compiler__ToolContext__opt_phmod_typing
;
66 extern const int COLOR_opts__Option__value
;
67 val
* NEW_layout_builders__MClassHasher(const struct type
* type
);
68 extern const struct type type_layout_builders__MClassHasher
;
69 val
* NEW_layout_builders__PHModOperator(const struct type
* type
);
70 extern const struct type type_layout_builders__PHModOperator
;
71 extern const int COLOR_layout_builders__PHModOperator__init
;
72 extern const int COLOR_layout_builders__MClassHasher__init
;
73 extern const int COLOR_layout_builders__TypingLayoutBuilder__build_layout
;
74 extern const int COLOR_separate_compiler__ToolContext__opt_phand_typing
;
75 val
* NEW_layout_builders__PHAndOperator(const struct type
* type
);
76 extern const struct type type_layout_builders__PHAndOperator
;
77 extern const int COLOR_layout_builders__PHAndOperator__init
;
78 extern const int COLOR_separate_compiler__ToolContext__opt_bm_typing
;
79 val
* NEW_layout_builders__MClassBMizer(const struct type
* type
);
80 extern const struct type type_layout_builders__MClassBMizer
;
81 extern const int COLOR_layout_builders__MClassBMizer__init
;
82 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__class_layout_61d
;
83 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__build_class_typing_tables
;
84 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__class_tables_61d
;
85 val
* NEW_hash_collection__HashMap(const struct type
* type
);
86 extern const struct type type_hash_collection__HashMapmodel__MClassabstract_collection__Setmodel__MVirtualTypeProp
;
87 extern const int COLOR_hash_collection__HashMap__init
;
88 extern const struct type type_hash_collection__HashSetmodel__MVirtualTypeProp
;
89 extern const int COLOR_hash_collection__HashSet__init
;
90 extern const int COLOR_abstract_collection__Map___91d_93d_61d
;
91 extern const int COLOR_abstract_compiler__AbstractCompiler__mainmodule
;
92 extern const int COLOR_abstract_compiler__MModule__properties
;
93 extern const struct type type_model__MVirtualTypeProp
;
94 extern const int COLOR_abstract_collection__MapRead___91d_93d
;
95 extern const int COLOR_abstract_collection__SimpleCollection__add
;
96 val
* NEW_layout_builders__MPropertyColorer(const struct type
* type
);
97 extern const struct type type_layout_builders__MPropertyColorermodel__MVirtualTypeProp
;
98 extern const int COLOR_layout_builders__MPropertyColorer__init
;
99 extern const int COLOR_layout_builders__PropertyLayoutBuilder__build_layout
;
100 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__build_vt_tables
;
101 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__vt_tables_61d
;
102 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__vt_layout_61d
;
103 void separate_erasure_compiler__SeparateErasureCompiler__init(val
* self
, val
* p0
, val
* p1
, val
* p2
);
104 extern const struct type type_hash_collection__HashMapmodel__MClassarray__Arraynullable_model__MPropDef
;
105 extern const struct type type_array__Arraynullable_model__MPropDef
;
106 extern const int COLOR_array__Array__init
;
107 extern const struct type type_array__Arraymodel__MClass
;
108 extern const int COLOR_model__MModule__flatten_mclass_hierarchy
;
109 extern const int COLOR_abstract_collection__Collection__has
;
110 extern const int COLOR_model__MClass__in_hierarchy
;
111 extern const int COLOR_array__Collection__to_a
;
112 extern const int COLOR_model__MModule__linearize_mclasses
;
113 extern const int COLOR_kernel__Object___61d_61d
;
114 extern const int COLOR_abstract_collection__Collection__length
;
115 extern const struct type type_kernel__Int
;
116 val
* NEW_range__Range(const struct type
* type
);
117 extern const struct type type_range__Rangekernel__Int
;
118 extern const int COLOR_range__Range__without_last
;
119 extern const int COLOR_abstract_collection__Sequence___91d_93d_61d
;
120 extern const int COLOR_model__MProperty__mpropdefs
;
121 extern const int COLOR_model__MPropDef__mclassdef
;
122 extern const int COLOR_model__MClassDef__mclass
;
123 val
* separate_erasure_compiler__SeparateErasureCompiler__build_vt_tables(val
* self
, val
* p0
, val
* p1
);
124 extern const struct type type_hash_collection__HashMapmodel__MClassarray__Arraynullable_model__MClass
;
125 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__class_layout
;
126 extern const struct type type_array__Arraynullable_model__MClass
;
127 extern const struct type type_layout_builders__PHLayoutmodel__MClassmodel__MClass
;
128 extern const int COLOR_layout_builders__PHLayout__hashes
;
129 val
* separate_erasure_compiler__SeparateErasureCompiler__build_class_typing_tables(val
* self
, val
* p0
);
130 extern const int COLOR_abstract_compiler__AbstractCompiler__header
;
131 extern const int COLOR_abstract_compiler__CodeWriter__add_decl
;
132 extern const int COLOR_separate_compiler__SeparateCompiler__compile_header_attribute_structs
;
133 extern const struct type type_layout_builders__PHLayoutmodel__MClassmodel__MVirtualTypeProp
;
134 void separate_erasure_compiler__SeparateErasureCompiler__compile_header_structs(val
* self
);
135 extern const int COLOR_model__MClass__intro
;
136 extern const int COLOR_model__MClassDef__bound_mtype
;
137 extern const int COLOR_abstract_compiler__MClass__c_name
;
138 extern const int COLOR_separate_compiler__SeparateCompiler__method_tables
;
139 extern const int COLOR_separate_compiler__SeparateCompiler__attr_tables
;
140 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__class_tables
;
141 extern const int COLOR_abstract_compiler__AbstractCompiler__new_visitor
;
142 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__add_decl
;
143 extern const int COLOR_abstract_compiler__AbstractCompiler__provide_declaration
;
144 extern const int COLOR_layout_builders__Layout__ids
;
145 extern const int COLOR_model__MClass__name
;
146 extern const int COLOR_separate_compiler__SeparateCompiler__box_kind_of
;
147 extern const int COLOR_layout_builders__PHLayout__masks
;
148 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__build_class_vts_table
;
149 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__require_declaration
;
150 extern const int COLOR_abstract_collection__SequenceRead___91d_93d
;
151 extern const int COLOR_abstract_compiler__MType__ctype
;
152 extern const int COLOR_kernel__Object___33d_61d
;
153 extern const int COLOR_abstract_compiler__MPropDef__c_name
;
154 extern const int COLOR_model__MClass__intro_mmodule
;
155 extern const int COLOR_abstract_compiler__MType__c_name
;
156 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__add
;
157 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__new_named_var
;
158 extern const int COLOR_abstract_compiler__RuntimeVariable__is_exact_61d
;
159 extern const int COLOR_model__MClassType__arguments
;
160 extern const int COLOR_abstract_collection__Collection__first
;
161 extern const int COLOR_abstract_compiler__AbstractCompiler__generate_init_attr
;
162 void separate_erasure_compiler__SeparateErasureCompiler__compile_class_to_c(val
* self
, val
* p0
);
163 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__vt_tables
;
164 extern const int COLOR_abstract_collection__Collection__is_empty
;
165 extern const struct type type_model__MVirtualTypeDef
;
166 extern const int COLOR_model__MVirtualTypeDef__bound
;
167 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler__retrieve_vt_bound
;
168 extern const struct type type_model__MNullableType
;
169 extern const int COLOR_model__MNullableType__mtype
;
170 extern const struct type type_model__MClassType
;
171 extern const int COLOR_model__MClassType__mclass
;
172 short int separate_erasure_compiler__SeparateErasureCompiler__build_class_vts_table(val
* self
, val
* p0
);
173 extern const int COLOR_file__Object__print
;
174 extern const struct type type_model__MVirtualType
;
175 extern const int COLOR_model__MType__anchor_to
;
176 extern const struct type type_model__MParameterType
;
177 val
* separate_erasure_compiler__SeparateErasureCompiler__retrieve_vt_bound(val
* self
, val
* p0
, val
* p1
);
178 val
* NEW_separate_erasure_compiler__SeparateErasureCompilerVisitor(const struct type
* type
);
179 extern const struct type type_separate_erasure_compiler__SeparateErasureCompilerVisitor
;
180 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__init
;
181 extern const int COLOR_abstract_compiler__AbstractCompiler_VTVISITOR
;
182 val
* separate_erasure_compiler__SeparateErasureCompiler__new_visitor(val
* self
);
183 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler___64dclass_tables
;
184 val
* separate_erasure_compiler__SeparateErasureCompiler__class_tables(val
* self
);
185 void separate_erasure_compiler__SeparateErasureCompiler__class_tables_61d(val
* self
, val
* p0
);
186 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompiler___64dvt_tables
;
187 val
* separate_erasure_compiler__SeparateErasureCompiler__vt_tables(val
* self
);
188 void separate_erasure_compiler__SeparateErasureCompiler__vt_tables_61d(val
* self
, val
* p0
);
189 extern const int COLOR_abstract_collection__MapRead__iterator
;
190 extern const int COLOR_abstract_collection__MapIterator__is_ok
;
191 extern const int COLOR_abstract_collection__MapIterator__key
;
192 extern const int COLOR_abstract_collection__MapIterator__item
;
193 extern const int COLOR_abstract_collection__MapIterator__next
;
194 void separate_erasure_compiler__SeparateErasureCompiler__display_sizes(val
* self
);
195 extern const int COLOR_separate_erasure_compiler__SeparateErasureCompilerVisitor__compile_callsite
;
196 extern const int COLOR_typing__CallSite__erasure_cast
;
197 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__compiler
;
198 extern const int COLOR_typing__CallSite__msignature
;
199 extern const int COLOR_model__MSignature__return_mtype
;
200 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__type_test
;
201 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__add_abort
;
202 val
* separate_erasure_compiler__SeparateErasureCompilerVisitor__compile_callsite(val
* self
, val
* p0
, val
* p1
);
203 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__new_expr
;
204 val
* separate_erasure_compiler__SeparateErasureCompilerVisitor__init_instance(val
* self
, val
* p0
);
205 extern const int COLOR_string__Object__inspect
;
206 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__bool_type
;
207 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__new_var
;
208 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__get_name
;
209 extern const int COLOR_separate_compiler__SeparateCompilerVisitor__maybe_null
;
210 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__frame
;
211 extern const int COLOR_abstract_compiler__Frame__mpropdef
;
212 extern const int COLOR_model__MClassDef__mmodule
;
213 extern const int COLOR_model__MType__resolve_for
;
214 extern const int COLOR_abstract_compiler__RuntimeVariable__mcasttype
;
215 extern const int COLOR_model__MType__is_subtype
;
216 extern const int COLOR_abstract_compiler__ToolContext__opt_typing_test_metrics
;
217 extern const int COLOR_abstract_compiler__AbstractCompiler__count_type_test_skipped
;
218 extern const int COLOR_abstract_compiler__RuntimeVariable__mtype
;
219 extern const int COLOR_array__Array__with_capacity
;
220 extern const int COLOR_abstract_compiler__AbstractCompiler__count_type_test_resolved
;
221 extern const int COLOR_abstract_compiler__Frame__arguments
;
222 extern const int COLOR_model__MVirtualType__mproperty
;
223 extern const int COLOR_separate_compiler__MProperty__const_color
;
224 extern const int COLOR_abstract_compiler__AbstractCompiler__count_type_test_unresolved
;
225 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__debug
;
226 val
* separate_erasure_compiler__SeparateErasureCompilerVisitor__type_test(val
* self
, val
* p0
, val
* p1
, val
* p2
);
227 val
* separate_erasure_compiler__SeparateErasureCompilerVisitor__class_name_string(val
* self
, val
* p0
);
228 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__get_class
;
229 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__anchor
;
230 extern const struct type type_array__Arraymodel__MType
;
231 extern const struct type type_array__NativeArraymodel__MType
;
232 extern const int COLOR_model__MClass__get_mtype
;
233 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__init_instance
;
234 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__object_type
;
235 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__autobox
;
236 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__int_instance
;
237 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__get_property
;
238 extern const struct type type_array__Arrayabstract_compiler__RuntimeVariable
;
239 extern const struct type type_array__NativeArrayabstract_compiler__RuntimeVariable
;
240 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__send
;
241 val
* separate_erasure_compiler__SeparateErasureCompilerVisitor__array_instance(val
* self
, val
* p0
, val
* p1
);
242 extern const int COLOR_abstract_compiler__AbstractCompilerVisitor__ret
;
243 void separate_erasure_compiler__SeparateErasureCompilerVisitor__calloc_array(val
* self
, val
* p0
, val
* p1
);