tests: add base_attr_boxing.nit
[nit.git] / c_src / file._nitni.c
1 #include "file._nitni.h"
2 #include "file_nit.h"
3 /* out/indirect function for file::String::files */
4 val_t String_files___out( val_t recv )
5 {
6 String recv___nitni;
7 Set return___nitni;
8 val_t return___nit;
9 recv___nitni = malloc( sizeof( struct s_String ) );
10 recv___nitni->ref.val = NIT_NULL;
11 recv___nitni->ref.count = 0;
12 nitni_local_ref_add( (struct nitni_ref *)recv___nitni );
13 recv___nitni->ref.val = recv;
14 return___nitni = malloc( sizeof( struct s_Set ) );
15 return___nitni->ref.val = NIT_NULL;
16 return___nitni->ref.count = 0;
17 return___nitni = String_files___impl( recv___nitni );
18 return___nit = return___nitni->ref.val;
19 nitni_local_ref_clean( );
20 return return___nit;
21 }
22 /* out/indirect function for file::NativeString::file_exists */
23 val_t NativeString_file_exists___out( val_t recv )
24 {
25 char * recv___nitni;
26 int return___nitni;
27 val_t return___nit;
28 recv___nitni = UNBOX_NativeString(recv);
29 return___nitni = string_NativeString_NativeString_file_exists_0( recv___nitni );
30 return___nit = TAG_Bool(return___nitni);
31 nitni_local_ref_clean( );
32 return return___nit;
33 }
34 /* out/indirect function for file::NativeString::file_stat */
35 val_t NativeString_file_stat___out( val_t recv )
36 {
37 char * recv___nitni;
38 FileStat return___nitni;
39 val_t return___nit;
40 recv___nitni = UNBOX_NativeString(recv);
41 return___nitni = string_NativeString_NativeString_file_stat_0( recv___nitni );
42 return___nit = BOX_FileStat(return___nitni);
43 nitni_local_ref_clean( );
44 return return___nit;
45 }
46 /* out/indirect function for file::NativeString::file_mkdir */
47 val_t NativeString_file_mkdir___out( val_t recv )
48 {
49 char * recv___nitni;
50 int return___nitni;
51 val_t return___nit;
52 recv___nitni = UNBOX_NativeString(recv);
53 return___nitni = string_NativeString_NativeString_file_mkdir_0( recv___nitni );
54 return___nit = TAG_Bool(return___nitni);
55 nitni_local_ref_clean( );
56 return return___nit;
57 }
58 /* out/indirect function for file::NativeString::file_delete */
59 val_t NativeString_file_delete___out( val_t recv )
60 {
61 char * recv___nitni;
62 int return___nitni;
63 val_t return___nit;
64 recv___nitni = UNBOX_NativeString(recv);
65 return___nitni = string_NativeString_NativeString_file_delete_0( recv___nitni );
66 return___nit = TAG_Bool(return___nitni);
67 nitni_local_ref_clean( );
68 return return___nit;
69 }
70 /* out/indirect function for file::FileStat::mode */
71 val_t FileStat_mode___out( val_t recv )
72 {
73 FileStat recv___nitni;
74 bigint return___nitni;
75 val_t return___nit;
76 recv___nitni = UNBOX_FileStat(recv);
77 return___nitni = file_FileStat_FileStat_mode_0( recv___nitni );
78 return___nit = TAG_Int(return___nitni);
79 nitni_local_ref_clean( );
80 return return___nit;
81 }
82 /* out/indirect function for file::FileStat::atime */
83 val_t FileStat_atime___out( val_t recv )
84 {
85 FileStat recv___nitni;
86 bigint return___nitni;
87 val_t return___nit;
88 recv___nitni = UNBOX_FileStat(recv);
89 return___nitni = file_FileStat_FileStat_atime_0( recv___nitni );
90 return___nit = TAG_Int(return___nitni);
91 nitni_local_ref_clean( );
92 return return___nit;
93 }
94 /* out/indirect function for file::FileStat::ctime */
95 val_t FileStat_ctime___out( val_t recv )
96 {
97 FileStat recv___nitni;
98 bigint return___nitni;
99 val_t return___nit;
100 recv___nitni = UNBOX_FileStat(recv);
101 return___nitni = file_FileStat_FileStat_ctime_0( recv___nitni );
102 return___nit = TAG_Int(return___nitni);
103 nitni_local_ref_clean( );
104 return return___nit;
105 }
106 /* out/indirect function for file::FileStat::mtime */
107 val_t FileStat_mtime___out( val_t recv )
108 {
109 FileStat recv___nitni;
110 bigint return___nitni;
111 val_t return___nit;
112 recv___nitni = UNBOX_FileStat(recv);
113 return___nitni = file_FileStat_FileStat_mtime_0( recv___nitni );
114 return___nit = TAG_Int(return___nitni);
115 nitni_local_ref_clean( );
116 return return___nit;
117 }
118 /* out/indirect function for file::FileStat::size */
119 val_t FileStat_size___out( val_t recv )
120 {
121 FileStat recv___nitni;
122 bigint return___nitni;
123 val_t return___nit;
124 recv___nitni = UNBOX_FileStat(recv);
125 return___nitni = file_FileStat_FileStat_size_0( recv___nitni );
126 return___nit = TAG_Int(return___nitni);
127 nitni_local_ref_clean( );
128 return return___nit;
129 }
130 /* out/indirect function for file::NativeFile::io_read */
131 val_t NativeFile_io_read___out( val_t recv, val_t buf, val_t len )
132 {
133 NativeFile recv___nitni;
134 char * buf___nitni;
135 bigint len___nitni;
136 bigint return___nitni;
137 val_t return___nit;
138 recv___nitni = UNBOX_NativeFile(recv);
139 buf___nitni = UNBOX_NativeString(buf);
140 len___nitni = UNTAG_Int(len);
141 return___nitni = file_NativeFile_NativeFile_io_read_2( recv___nitni, buf___nitni, len___nitni );
142 return___nit = TAG_Int(return___nitni);
143 nitni_local_ref_clean( );
144 return return___nit;
145 }
146 /* out/indirect function for file::NativeFile::io_write */
147 val_t NativeFile_io_write___out( val_t recv, val_t buf, val_t len )
148 {
149 NativeFile recv___nitni;
150 char * buf___nitni;
151 bigint len___nitni;
152 bigint return___nitni;
153 val_t return___nit;
154 recv___nitni = UNBOX_NativeFile(recv);
155 buf___nitni = UNBOX_NativeString(buf);
156 len___nitni = UNTAG_Int(len);
157 return___nitni = file_NativeFile_NativeFile_io_write_2( recv___nitni, buf___nitni, len___nitni );
158 return___nit = TAG_Int(return___nitni);
159 nitni_local_ref_clean( );
160 return return___nit;
161 }
162 /* out/indirect function for file::NativeFile::io_close */
163 val_t NativeFile_io_close___out( val_t recv )
164 {
165 NativeFile recv___nitni;
166 bigint return___nitni;
167 val_t return___nit;
168 recv___nitni = UNBOX_NativeFile(recv);
169 return___nitni = file_NativeFile_NativeFile_io_close_0( recv___nitni );
170 return___nit = TAG_Int(return___nitni);
171 nitni_local_ref_clean( );
172 return return___nit;
173 }
174 /* out/indirect function for file::NativeFile::file_stat */
175 val_t NativeFile_file_stat___out( val_t recv )
176 {
177 NativeFile recv___nitni;
178 FileStat return___nitni;
179 val_t return___nit;
180 recv___nitni = UNBOX_NativeFile(recv);
181 return___nitni = file_NativeFile_NativeFile_file_stat_0( recv___nitni );
182 return___nit = BOX_FileStat(return___nitni);
183 nitni_local_ref_clean( );
184 return return___nit;
185 }
186 /* out/indirect function for file::NativeFile::io_open_read */
187 val_t NEW_NativeFile_standard___file___NativeFile___io_open_read( val_t path )
188 {
189 char * path___nitni;
190 NativeFile return___nitni;
191 val_t return___nit;
192 path___nitni = UNBOX_NativeString(path);
193 return___nitni = file_NativeFileCapable_NativeFileCapable_io_open_read_1( path___nitni );
194 return___nit = BOX_NativeFile(return___nitni);
195 nitni_local_ref_clean( );
196 return return___nit;
197 }
198 /* out/indirect function for file::NativeFile::io_open_write */
199 val_t NEW_NativeFile_standard___file___NativeFile___io_open_write( val_t path )
200 {
201 char * path___nitni;
202 NativeFile return___nitni;
203 val_t return___nit;
204 path___nitni = UNBOX_NativeString(path);
205 return___nitni = file_NativeFileCapable_NativeFileCapable_io_open_write_1( path___nitni );
206 return___nit = BOX_NativeFile(return___nitni);
207 nitni_local_ref_clean( );
208 return return___nit;
209 }
210 /* out/indirect function for file::NativeFile::native_stdin */
211 val_t NEW_NativeFile_standard___file___NativeFile___native_stdin( )
212 {
213 NativeFile return___nitni;
214 val_t return___nit;
215 return___nitni = file_NativeFileCapable_NativeFileCapable_native_stdin_0( );
216 return___nit = BOX_NativeFile(return___nitni);
217 nitni_local_ref_clean( );
218 return return___nit;
219 }
220 /* out/indirect function for file::NativeFile::native_stdout */
221 val_t NEW_NativeFile_standard___file___NativeFile___native_stdout( )
222 {
223 NativeFile return___nitni;
224 val_t return___nit;
225 return___nitni = file_NativeFileCapable_NativeFileCapable_native_stdout_0( );
226 return___nit = BOX_NativeFile(return___nitni);
227 nitni_local_ref_clean( );
228 return return___nit;
229 }
230 /* out/indirect function for file::NativeFile::native_stderr */
231 val_t NEW_NativeFile_standard___file___NativeFile___native_stderr( )
232 {
233 NativeFile return___nitni;
234 val_t return___nit;
235 return___nitni = file_NativeFileCapable_NativeFileCapable_native_stderr_0( );
236 return___nit = BOX_NativeFile(return___nitni);
237 nitni_local_ref_clean( );
238 return return___nit;
239 }
240 /* friendly for hash_collection::HashSet::init */
241 HashSet file_new_HashSet( )
242 {
243 HashSet result___nitni;
244 val_t result___nit;
245 result___nitni = malloc( sizeof( struct s_HashSet ) );
246 result___nitni->ref.val = NIT_NULL;
247 result___nitni->ref.count = 0;
248 nitni_local_ref_add( (struct nitni_ref *)result___nitni );
249 result___nit = NEW_HashSet_standard___collection___hash_collection___HashSet___init( );
250 result___nitni->ref.val = result___nit;
251 return result___nitni;
252 }
253 /* friendly for hash_collection::HashSet::(abstract_collection::SimpleCollection::add) */
254 void file_HashSet_add( HashSet recv, Object item )
255 {
256 val_t recv___nit;
257 val_t item___nit;
258 recv___nit = recv->ref.val;
259 item___nit = item->ref.val;
260 CALL_standard___collection___abstract_collection___SimpleCollection___add( recv___nit )( recv___nit, item___nit );
261 }
262 /* friendly for string::String::from_cstring */
263 String file_new_String_from_cstring( char * str )
264 {
265 val_t str___nit;
266 String result___nitni;
267 val_t result___nit;
268 str___nit = BOX_NativeString(str);
269 result___nitni = malloc( sizeof( struct s_String ) );
270 result___nitni->ref.val = NIT_NULL;
271 result___nitni->ref.count = 0;
272 nitni_local_ref_add( (struct nitni_ref *)result___nitni );
273 result___nit = NEW_String_standard___string___String___from_cstring( str___nit );
274 result___nitni->ref.val = result___nit;
275 return result___nitni;
276 }
277 /* friendly for string::String::to_cstring */
278 char * file_String_to_cstring( String recv )
279 {
280 val_t recv___nit;
281 char * result___nitni;
282 val_t result___nit;
283 recv___nit = recv->ref.val;
284 result___nit = CALL_standard___string___String___to_cstring( recv___nit )( recv___nit );
285 result___nitni = UNBOX_NativeString(result___nit);
286 return result___nitni;
287 }
288 int file_HashSet_is_a_Set( HashSet value )
289 {
290 val_t temp;
291 temp = value->ref.val;
292 if ( ! ( ISOBJ( temp ) ? OBJISA( temp, standard___collection___abstract_collection___Set ): VALISA( temp, standard___collection___abstract_collection___Set ) ) ) return 0;
293 return 1;
294 }
295 Set file_HashSet_as_Set( HashSet value )
296 {
297 val_t temp;
298 Set out;
299 out = malloc( sizeof( struct s_Set ) );
300 out->ref.val = NIT_NULL;
301 out->ref.count = 0;
302 nitni_local_ref_add( (struct nitni_ref *)out );
303 temp = value->ref.val;
304 if ( ISNULL(temp) ){ fprintf( stderr, "Casting from HashSet[String] to Set[String] failed because value is null." );
305 abort();
306 }if ( ! ( ISOBJ( temp ) ? OBJISA( temp, standard___collection___abstract_collection___Set ): VALISA( temp, standard___collection___abstract_collection___Set ) ) ){
307 fprintf( stderr, "Casting to Set[String] failed because value is not a Set[String]." );
308 abort();
309 }
310 out->ref.val = temp;
311 return out;
312 }
313 int file_String_is_a_Object( String value )
314 {
315 val_t temp;
316 temp = value->ref.val;
317 if ( ! ( ISOBJ( temp ) ? OBJISA( temp, standard___kernel___Object ): VALISA( temp, standard___kernel___Object ) ) ) return 0;
318 return 1;
319 }
320 Object file_String_as_Object( String value )
321 {
322 val_t temp;
323 Object out;
324 out = malloc( sizeof( struct s_Object ) );
325 out->ref.val = NIT_NULL;
326 out->ref.count = 0;
327 nitni_local_ref_add( (struct nitni_ref *)out );
328 temp = value->ref.val;
329 if ( ISNULL(temp) ){ fprintf( stderr, "Casting from String to Object failed because value is null." );
330 abort();
331 }if ( ! ( ISOBJ( temp ) ? OBJISA( temp, standard___kernel___Object ): VALISA( temp, standard___kernel___Object ) ) ){
332 fprintf( stderr, "Casting to Object failed because value is not a Object." );
333 abort();
334 }
335 out->ref.val = temp;
336 return out;
337 }