compile: casts ('isa' and 'as') with nullable info
[nit.git] / c_src / string._sep.h
1 /* This C header file is generated by NIT to compile modules and programs that requires string. */
2 #ifndef string_sep
3 #define string_sep
4 #include "array._sep.h"
5 #include <nit_common.h>
6 #include <string_nit.h>
7
8 extern const classtable_elt_t VFT_String[];
9
10 extern const classtable_elt_t VFT_NativeString[];
11 struct TBOX_NativeString { const classtable_elt_t * vft; char * val;};
12 val_t BOX_NativeString(char * val);
13 #define UNBOX_NativeString(x) (((struct TBOX_NativeString *)(VAL2OBJ(x)))->val)
14
15 extern const classtable_elt_t VFT_StringCapable[];
16 extern const char *LOCATE_string;
17 extern const int SFT_string[];
18 #define ID_String (SFT_string[0])
19 #define COLOR_String (SFT_string[1])
20 #define ATTR_string___String____items(recv) ATTR(recv, (SFT_string[2] + 0))
21 #define ATTR_string___String____capacity(recv) ATTR(recv, (SFT_string[2] + 1))
22 #define INIT_TABLE_POS_String (SFT_string[3] + 0)
23 #define CALL_SUPER_string___String___append(recv) ((string___String___append_t)CALL((recv), (SFT_string[3] + 1)))
24 #define CALL_string___String_____plus(recv) ((string___String_____plus_t)CALL((recv), (SFT_string[3] + 2)))
25 #define CALL_string___String_____star(recv) ((string___String_____star_t)CALL((recv), (SFT_string[3] + 3)))
26 #define CALL_string___String___to_i(recv) ((string___String___to_i_t)CALL((recv), (SFT_string[3] + 4)))
27 #define CALL_string___String___to_hex(recv) ((string___String___to_hex_t)CALL((recv), (SFT_string[3] + 5)))
28 #define CALL_string___String___a_to(recv) ((string___String___a_to_t)CALL((recv), (SFT_string[3] + 6)))
29 #define CALL_string___String___to_cstring(recv) ((string___String___to_cstring_t)CALL((recv), (SFT_string[3] + 7)))
30 #define CALL_string___String___substring(recv) ((string___String___substring_t)CALL((recv), (SFT_string[3] + 8)))
31 #define CALL_string___String___substring_from(recv) ((string___String___substring_from_t)CALL((recv), (SFT_string[3] + 9)))
32 #define CALL_string___String___has_substring(recv) ((string___String___has_substring_t)CALL((recv), (SFT_string[3] + 10)))
33 #define CALL_string___String___has_prefix(recv) ((string___String___has_prefix_t)CALL((recv), (SFT_string[3] + 11)))
34 #define CALL_string___String___has_suffix(recv) ((string___String___has_suffix_t)CALL((recv), (SFT_string[3] + 12)))
35 #define CALL_string___String___init(recv) ((string___String___init_t)CALL((recv), (SFT_string[3] + 13)))
36 #define CALL_string___String___from(recv) ((string___String___from_t)CALL((recv), (SFT_string[3] + 14)))
37 #define CALL_string___String___with_capacity(recv) ((string___String___with_capacity_t)CALL((recv), (SFT_string[3] + 15)))
38 #define CALL_string___String___with_native(recv) ((string___String___with_native_t)CALL((recv), (SFT_string[3] + 16)))
39 #define CALL_string___String___from_cstring(recv) ((string___String___from_cstring_t)CALL((recv), (SFT_string[3] + 17)))
40 #define CALL_string___String___filled_with(recv) ((string___String___filled_with_t)CALL((recv), (SFT_string[3] + 18)))
41 #define CALL_string___String___to_upper(recv) ((string___String___to_upper_t)CALL((recv), (SFT_string[3] + 19)))
42 #define CALL_string___String___to_lower(recv) ((string___String___to_lower_t)CALL((recv), (SFT_string[3] + 20)))
43 #define CALL_string___String___items(recv) ((string___String___items_t)CALL((recv), (SFT_string[3] + 21)))
44 #define CALL_string___String___capacity(recv) ((string___String___capacity_t)CALL((recv), (SFT_string[3] + 22)))
45 #define CALL_string___Object___to_s(recv) ((string___Object___to_s_t)CALL((recv), (SFT_string[4] + 0)))
46 #define CALL_string___Object___inspect(recv) ((string___Object___inspect_t)CALL((recv), (SFT_string[4] + 1)))
47 #define CALL_string___Object___inspect_head(recv) ((string___Object___inspect_head_t)CALL((recv), (SFT_string[4] + 2)))
48 #define CALL_string___Object___args(recv) ((string___Object___args_t)CALL((recv), (SFT_string[4] + 3)))
49 #define CALL_string___Int___fill_string(recv) ((string___Int___fill_string_t)CALL((recv), (SFT_string[5] + 0)))
50 #define CALL_string___Int___to_hex(recv) ((string___Int___to_hex_t)CALL((recv), (SFT_string[5] + 1)))
51 #define CALL_string___Int___to_base(recv) ((string___Int___to_base_t)CALL((recv), (SFT_string[5] + 2)))
52 #define CALL_string___Float___to_precision(recv) ((string___Float___to_precision_t)CALL((recv), (SFT_string[6] + 0)))
53 #define CALL_string___Collection___join(recv) ((string___Collection___join_t)CALL((recv), (SFT_string[7] + 0)))
54 #define CALL_string___Map___map_join(recv) ((string___Map___map_join_t)CALL((recv), (SFT_string[8] + 0)))
55 #define ID_NativeString (SFT_string[9])
56 #define COLOR_NativeString (SFT_string[10])
57 #define INIT_TABLE_POS_NativeString (SFT_string[11] + 0)
58 #define CALL_string___NativeString_____bra(recv) ((string___NativeString_____bra_t)CALL((recv), (SFT_string[11] + 1)))
59 #define CALL_string___NativeString_____braeq(recv) ((string___NativeString_____braeq_t)CALL((recv), (SFT_string[11] + 2)))
60 #define CALL_string___NativeString___copy_to(recv) ((string___NativeString___copy_to_t)CALL((recv), (SFT_string[11] + 3)))
61 #define CALL_string___NativeString___cstring_length(recv) ((string___NativeString___cstring_length_t)CALL((recv), (SFT_string[11] + 4)))
62 #define CALL_string___NativeString___atoi(recv) ((string___NativeString___atoi_t)CALL((recv), (SFT_string[11] + 5)))
63 #define CALL_string___NativeString___init(recv) ((string___NativeString___init_t)CALL((recv), (SFT_string[11] + 6)))
64 #define ID_StringCapable (SFT_string[12])
65 #define COLOR_StringCapable (SFT_string[13])
66 #define INIT_TABLE_POS_StringCapable (SFT_string[14] + 0)
67 #define CALL_string___StringCapable___calloc_string(recv) ((string___StringCapable___calloc_string_t)CALL((recv), (SFT_string[14] + 1)))
68 #define CALL_string___StringCapable___init(recv) ((string___StringCapable___init_t)CALL((recv), (SFT_string[14] + 2)))
69 #define ATTR_string___Sys____args_cache(recv) ATTR(recv, (SFT_string[15] + 0))
70 #define CALL_string___Sys___program_name(recv) ((string___Sys___program_name_t)CALL((recv), (SFT_string[16] + 0)))
71 #define CALL_string___Sys___init_args(recv) ((string___Sys___init_args_t)CALL((recv), (SFT_string[16] + 1)))
72 #define CALL_string___Sys___native_argc(recv) ((string___Sys___native_argc_t)CALL((recv), (SFT_string[16] + 2)))
73 #define CALL_string___Sys___native_argv(recv) ((string___Sys___native_argv_t)CALL((recv), (SFT_string[16] + 3)))
74 typedef val_t (* string___String_____eqeq_t)(val_t self, val_t param0);
75 val_t string___String_____eqeq(val_t self, val_t param0);
76 #define LOCATE_string___String_____eqeq "string::String::(kernel::Object::==)"
77 typedef void (* string___String___output_t)(val_t self);
78 void string___String___output(val_t self);
79 #define LOCATE_string___String___output "string::String::(kernel::Object::output)"
80 typedef val_t (* string___String_____bra_t)(val_t self, val_t param0);
81 val_t string___String_____bra(val_t self, val_t param0);
82 #define LOCATE_string___String_____bra "string::String::(abstract_collection::Map::[])"
83 typedef void (* string___String_____braeq_t)(val_t self, val_t param0, val_t param1);
84 void string___String_____braeq(val_t self, val_t param0, val_t param1);
85 #define LOCATE_string___String_____braeq "string::String::(abstract_collection::Map::[]=)"
86 typedef void (* string___String___add_t)(val_t self, val_t param0);
87 void string___String___add(val_t self, val_t param0);
88 #define LOCATE_string___String___add "string::String::(abstract_collection::SimpleCollection::add)"
89 typedef void (* string___String___append_t)(val_t self, val_t param0);
90 void string___String___append(val_t self, val_t param0);
91 #define LOCATE_string___String___append "string::String::(abstract_collection::IndexedCollection::append)"
92 typedef void (* string___String___enlarge_t)(val_t self, val_t param0);
93 void string___String___enlarge(val_t self, val_t param0);
94 #define LOCATE_string___String___enlarge "string::String::(array::AbstractArray::enlarge)"
95 typedef val_t (* string___String___to_s_t)(val_t self);
96 val_t string___String___to_s(val_t self);
97 #define LOCATE_string___String___to_s "string::String::(string::Object::to_s)"
98 typedef val_t (* string___String_____l_t)(val_t self, val_t param0);
99 val_t string___String_____l(val_t self, val_t param0);
100 #define LOCATE_string___String_____l "string::String::(kernel::Comparable::<)"
101 typedef val_t (* string___String_____plus_t)(val_t self, val_t param0);
102 val_t string___String_____plus(val_t self, val_t param0);
103 #define LOCATE_string___String_____plus "string::String::+"
104 typedef val_t (* string___String_____star_t)(val_t self, val_t param0);
105 val_t string___String_____star(val_t self, val_t param0);
106 #define LOCATE_string___String_____star "string::String::*"
107 typedef val_t (* string___String___to_i_t)(val_t self);
108 val_t string___String___to_i(val_t self);
109 #define LOCATE_string___String___to_i "string::String::to_i"
110 typedef val_t (* string___String___to_hex_t)(val_t self);
111 val_t string___String___to_hex(val_t self);
112 #define LOCATE_string___String___to_hex "string::String::to_hex"
113 typedef val_t (* string___String___a_to_t)(val_t self, val_t param0);
114 val_t string___String___a_to(val_t self, val_t param0);
115 #define LOCATE_string___String___a_to "string::String::a_to"
116 typedef val_t (* string___String___to_cstring_t)(val_t self);
117 val_t string___String___to_cstring(val_t self);
118 #define LOCATE_string___String___to_cstring "string::String::to_cstring"
119 typedef val_t (* string___String___substring_t)(val_t self, val_t param0, val_t param1);
120 val_t string___String___substring(val_t self, val_t param0, val_t param1);
121 #define LOCATE_string___String___substring "string::String::substring"
122 typedef val_t (* string___String___substring_from_t)(val_t self, val_t param0);
123 val_t string___String___substring_from(val_t self, val_t param0);
124 #define LOCATE_string___String___substring_from "string::String::substring_from"
125 typedef val_t (* string___String___has_substring_t)(val_t self, val_t param0, val_t param1);
126 val_t string___String___has_substring(val_t self, val_t param0, val_t param1);
127 #define LOCATE_string___String___has_substring "string::String::has_substring"
128 typedef val_t (* string___String___has_prefix_t)(val_t self, val_t param0);
129 val_t string___String___has_prefix(val_t self, val_t param0);
130 #define LOCATE_string___String___has_prefix "string::String::has_prefix"
131 typedef val_t (* string___String___has_suffix_t)(val_t self, val_t param0);
132 val_t string___String___has_suffix(val_t self, val_t param0);
133 #define LOCATE_string___String___has_suffix "string::String::has_suffix"
134 typedef void (* string___String___init_t)(val_t self, int* init_table);
135 void string___String___init(val_t self, int* init_table);
136 #define LOCATE_string___String___init "string::String::init"
137 val_t NEW_String_string___String___init();
138 typedef void (* string___String___from_t)(val_t self, val_t param0, int* init_table);
139 void string___String___from(val_t self, val_t param0, int* init_table);
140 #define LOCATE_string___String___from "string::String::from"
141 val_t NEW_String_string___String___from(val_t p0);
142 typedef void (* string___String___with_capacity_t)(val_t self, val_t param0, int* init_table);
143 void string___String___with_capacity(val_t self, val_t param0, int* init_table);
144 #define LOCATE_string___String___with_capacity "string::String::with_capacity"
145 val_t NEW_String_string___String___with_capacity(val_t p0);
146 typedef void (* string___String___with_native_t)(val_t self, val_t param0, val_t param1, int* init_table);
147 void string___String___with_native(val_t self, val_t param0, val_t param1, int* init_table);
148 #define LOCATE_string___String___with_native "string::String::with_native"
149 val_t NEW_String_string___String___with_native(val_t p0, val_t p1);
150 typedef void (* string___String___from_cstring_t)(val_t self, val_t param0, int* init_table);
151 void string___String___from_cstring(val_t self, val_t param0, int* init_table);
152 #define LOCATE_string___String___from_cstring "string::String::from_cstring"
153 val_t NEW_String_string___String___from_cstring(val_t p0);
154 typedef void (* string___String___filled_with_t)(val_t self, val_t param0, val_t param1, int* init_table);
155 void string___String___filled_with(val_t self, val_t param0, val_t param1, int* init_table);
156 #define LOCATE_string___String___filled_with "string::String::filled_with"
157 val_t NEW_String_string___String___filled_with(val_t p0, val_t p1);
158 typedef val_t (* string___String___to_upper_t)(val_t self);
159 val_t string___String___to_upper(val_t self);
160 #define LOCATE_string___String___to_upper "string::String::to_upper"
161 typedef val_t (* string___String___to_lower_t)(val_t self);
162 val_t string___String___to_lower(val_t self);
163 #define LOCATE_string___String___to_lower "string::String::to_lower"
164 typedef val_t (* string___String___items_t)(val_t self);
165 val_t string___String___items(val_t self);
166 #define LOCATE_string___String___items "string::String::items"
167 typedef val_t (* string___String___capacity_t)(val_t self);
168 val_t string___String___capacity(val_t self);
169 #define LOCATE_string___String___capacity "string::String::capacity"
170 typedef val_t (* string___Object___to_s_t)(val_t self);
171 val_t string___Object___to_s(val_t self);
172 #define LOCATE_string___Object___to_s "string::Object::to_s"
173 typedef val_t (* string___Object___inspect_t)(val_t self);
174 val_t string___Object___inspect(val_t self);
175 #define LOCATE_string___Object___inspect "string::Object::inspect"
176 typedef val_t (* string___Object___inspect_head_t)(val_t self);
177 val_t string___Object___inspect_head(val_t self);
178 #define LOCATE_string___Object___inspect_head "string::Object::inspect_head"
179 typedef val_t (* string___Object___args_t)(val_t self);
180 val_t string___Object___args(val_t self);
181 #define LOCATE_string___Object___args "string::Object::args"
182 typedef val_t (* string___Bool___to_s_t)(val_t self);
183 val_t string___Bool___to_s(val_t self);
184 #define LOCATE_string___Bool___to_s "string::Bool::(string::Object::to_s)"
185 typedef val_t (* string___Int___to_s_t)(val_t self);
186 val_t string___Int___to_s(val_t self);
187 #define LOCATE_string___Int___to_s "string::Int::(string::Object::to_s)"
188 typedef void (* string___Int___fill_string_t)(val_t self, val_t param0, val_t param1, val_t param2);
189 void string___Int___fill_string(val_t self, val_t param0, val_t param1, val_t param2);
190 #define LOCATE_string___Int___fill_string "string::Int::fill_string"
191 typedef val_t (* string___Int___to_hex_t)(val_t self);
192 val_t string___Int___to_hex(val_t self);
193 #define LOCATE_string___Int___to_hex "string::Int::to_hex"
194 typedef val_t (* string___Int___to_base_t)(val_t self, val_t param0, val_t param1);
195 val_t string___Int___to_base(val_t self, val_t param0, val_t param1);
196 #define LOCATE_string___Int___to_base "string::Int::to_base"
197 typedef val_t (* string___Float___to_s_t)(val_t self);
198 val_t string___Float___to_s(val_t self);
199 #define LOCATE_string___Float___to_s "string::Float::(string::Object::to_s)"
200 typedef val_t (* string___Float___to_precision_t)(val_t self, val_t param0);
201 val_t string___Float___to_precision(val_t self, val_t param0);
202 #define LOCATE_string___Float___to_precision "string::Float::to_precision"
203 typedef val_t (* string___Char___to_s_t)(val_t self);
204 val_t string___Char___to_s(val_t self);
205 #define LOCATE_string___Char___to_s "string::Char::(string::Object::to_s)"
206 typedef val_t (* string___Collection___to_s_t)(val_t self);
207 val_t string___Collection___to_s(val_t self);
208 #define LOCATE_string___Collection___to_s "string::Collection::(string::Object::to_s)"
209 typedef val_t (* string___Collection___join_t)(val_t self, val_t param0);
210 val_t string___Collection___join(val_t self, val_t param0);
211 #define LOCATE_string___Collection___join "string::Collection::join"
212 typedef val_t (* string___Map___map_join_t)(val_t self, val_t param0, val_t param1);
213 val_t string___Map___map_join(val_t self, val_t param0, val_t param1);
214 #define LOCATE_string___Map___map_join "string::Map::map_join"
215 typedef val_t (* string___NativeString_____bra_t)(val_t self, val_t param0);
216 val_t string___NativeString_____bra(val_t self, val_t param0);
217 #define LOCATE_string___NativeString_____bra "string::NativeString::[]"
218 typedef void (* string___NativeString_____braeq_t)(val_t self, val_t param0, val_t param1);
219 void string___NativeString_____braeq(val_t self, val_t param0, val_t param1);
220 #define LOCATE_string___NativeString_____braeq "string::NativeString::[]="
221 typedef void (* string___NativeString___copy_to_t)(val_t self, val_t param0, val_t param1, val_t param2, val_t param3);
222 void string___NativeString___copy_to(val_t self, val_t param0, val_t param1, val_t param2, val_t param3);
223 #define LOCATE_string___NativeString___copy_to "string::NativeString::copy_to"
224 typedef val_t (* string___NativeString___cstring_length_t)(val_t self);
225 val_t string___NativeString___cstring_length(val_t self);
226 #define LOCATE_string___NativeString___cstring_length "string::NativeString::cstring_length"
227 typedef val_t (* string___NativeString___atoi_t)(val_t self);
228 val_t string___NativeString___atoi(val_t self);
229 #define LOCATE_string___NativeString___atoi "string::NativeString::atoi"
230 typedef void (* string___NativeString___init_t)(val_t self, int* init_table);
231 void string___NativeString___init(val_t self, int* init_table);
232 #define LOCATE_string___NativeString___init "string::NativeString::init"
233 val_t NEW_NativeString_string___NativeString___init();
234 typedef val_t (* string___StringCapable___calloc_string_t)(val_t self, val_t param0);
235 val_t string___StringCapable___calloc_string(val_t self, val_t param0);
236 #define LOCATE_string___StringCapable___calloc_string "string::StringCapable::calloc_string"
237 typedef void (* string___StringCapable___init_t)(val_t self, int* init_table);
238 void string___StringCapable___init(val_t self, int* init_table);
239 #define LOCATE_string___StringCapable___init "string::StringCapable::init"
240 val_t NEW_StringCapable_string___StringCapable___init();
241 val_t NEW_Sys_kernel___Sys___init();
242 typedef val_t (* string___Sys___args_t)(val_t self);
243 val_t string___Sys___args(val_t self);
244 #define LOCATE_string___Sys___args "string::Sys::(string::Object::args)"
245 typedef val_t (* string___Sys___program_name_t)(val_t self);
246 val_t string___Sys___program_name(val_t self);
247 #define LOCATE_string___Sys___program_name "string::Sys::program_name"
248 typedef void (* string___Sys___init_args_t)(val_t self);
249 void string___Sys___init_args(val_t self);
250 #define LOCATE_string___Sys___init_args "string::Sys::init_args"
251 typedef val_t (* string___Sys___native_argc_t)(val_t self);
252 val_t string___Sys___native_argc(val_t self);
253 #define LOCATE_string___Sys___native_argc "string::Sys::native_argc"
254 typedef val_t (* string___Sys___native_argv_t)(val_t self, val_t param0);
255 val_t string___Sys___native_argv(val_t self, val_t param0);
256 #define LOCATE_string___Sys___native_argv "string::Sys::native_argv"
257 #endif