1 /* This C header file is generated by NIT to compile modules and programs that requires file. */
4 #include "stream._sep.h"
5 #include "string_search._sep.h"
6 #include <nit_common.h>
9 extern const classtable_elt_t VFT_FStream
[];
11 extern const classtable_elt_t VFT_IFStream
[];
13 extern const classtable_elt_t VFT_OFStream
[];
15 extern const classtable_elt_t VFT_Stdin
[];
17 extern const classtable_elt_t VFT_Stdout
[];
19 extern const classtable_elt_t VFT_Stderr
[];
21 extern const classtable_elt_t VFT_FileStat
[];
22 struct TBOX_FileStat
{ const classtable_elt_t
* vft
; void * val
;};
23 val_t
BOX_FileStat(void * val
);
24 #define UNBOX_FileStat(x) (((struct TBOX_FileStat *)(VAL2OBJ(x)))->val)
26 extern const classtable_elt_t VFT_NativeFile
[];
27 struct TBOX_NativeFile
{ const classtable_elt_t
* vft
; void * val
;};
28 val_t
BOX_NativeFile(void * val
);
29 #define UNBOX_NativeFile(x) (((struct TBOX_NativeFile *)(VAL2OBJ(x)))->val)
31 extern const classtable_elt_t VFT_NativeFileCapable
[];
32 extern const char *LOCATE_file
;
33 extern const int SFT_file
[];
34 #define CALL_file___Object___printn(recv) ((file___Object___printn_t)CALL((recv), (SFT_file[0] + 0)))
35 #define CALL_file___Object___print(recv) ((file___Object___print_t)CALL((recv), (SFT_file[0] + 1)))
36 #define CALL_file___Object___getc(recv) ((file___Object___getc_t)CALL((recv), (SFT_file[0] + 2)))
37 #define CALL_file___Object___gets(recv) ((file___Object___gets_t)CALL((recv), (SFT_file[0] + 3)))
38 #define CALL_file___Object___stdin(recv) ((file___Object___stdin_t)CALL((recv), (SFT_file[0] + 4)))
39 #define CALL_file___Object___stdout(recv) ((file___Object___stdout_t)CALL((recv), (SFT_file[0] + 5)))
40 #define CALL_file___Object___stderr(recv) ((file___Object___stderr_t)CALL((recv), (SFT_file[0] + 6)))
41 #define ID_FStream (SFT_file[1])
42 #define COLOR_FStream (SFT_file[2])
43 #define ATTR_file___FStream____path(recv) ATTR(recv, (SFT_file[3] + 0))
44 #define ATTR_file___FStream____file(recv) ATTR(recv, (SFT_file[3] + 1))
45 #define INIT_TABLE_POS_FStream (SFT_file[4] + 0)
46 #define CALL_file___FStream___path(recv) ((file___FStream___path_t)CALL((recv), (SFT_file[4] + 1)))
47 #define CALL_file___FStream___file_stat(recv) ((file___FStream___file_stat_t)CALL((recv), (SFT_file[4] + 2)))
48 #define ID_IFStream (SFT_file[5])
49 #define COLOR_IFStream (SFT_file[6])
50 #define ATTR_file___IFStream____end_reached(recv) ATTR(recv, (SFT_file[7] + 0))
51 #define INIT_TABLE_POS_IFStream (SFT_file[8] + 0)
52 #define CALL_file___IFStream___reopen(recv) ((file___IFStream___reopen_t)CALL((recv), (SFT_file[8] + 1)))
53 #define CALL_file___IFStream___open(recv) ((file___IFStream___open_t)CALL((recv), (SFT_file[8] + 2)))
54 #define CALL_file___IFStream___init(recv) ((file___IFStream___init_t)CALL((recv), (SFT_file[8] + 3)))
55 #define CALL_file___IFStream___without_file(recv) ((file___IFStream___without_file_t)CALL((recv), (SFT_file[8] + 4)))
56 #define ID_OFStream (SFT_file[9])
57 #define COLOR_OFStream (SFT_file[10])
58 #define ATTR_file___OFStream____writable(recv) ATTR(recv, (SFT_file[11] + 0))
59 #define INIT_TABLE_POS_OFStream (SFT_file[12] + 0)
60 #define CALL_file___OFStream___write_native(recv) ((file___OFStream___write_native_t)CALL((recv), (SFT_file[12] + 1)))
61 #define CALL_file___OFStream___open(recv) ((file___OFStream___open_t)CALL((recv), (SFT_file[12] + 2)))
62 #define CALL_file___OFStream___init(recv) ((file___OFStream___init_t)CALL((recv), (SFT_file[12] + 3)))
63 #define CALL_file___OFStream___without_file(recv) ((file___OFStream___without_file_t)CALL((recv), (SFT_file[12] + 4)))
64 #define ID_Stdin (SFT_file[13])
65 #define COLOR_Stdin (SFT_file[14])
66 #define INIT_TABLE_POS_Stdin (SFT_file[15] + 0)
67 #define CALL_file___Stdin___init(recv) ((file___Stdin___init_t)CALL((recv), (SFT_file[15] + 1)))
68 #define ID_Stdout (SFT_file[16])
69 #define COLOR_Stdout (SFT_file[17])
70 #define INIT_TABLE_POS_Stdout (SFT_file[18] + 0)
71 #define CALL_file___Stdout___init(recv) ((file___Stdout___init_t)CALL((recv), (SFT_file[18] + 1)))
72 #define ID_Stderr (SFT_file[19])
73 #define COLOR_Stderr (SFT_file[20])
74 #define INIT_TABLE_POS_Stderr (SFT_file[21] + 0)
75 #define CALL_file___Stderr___init(recv) ((file___Stderr___init_t)CALL((recv), (SFT_file[21] + 1)))
76 #define CALL_file___String___file_exists(recv) ((file___String___file_exists_t)CALL((recv), (SFT_file[22] + 0)))
77 #define CALL_file___String___file_stat(recv) ((file___String___file_stat_t)CALL((recv), (SFT_file[22] + 1)))
78 #define CALL_file___String___file_delete(recv) ((file___String___file_delete_t)CALL((recv), (SFT_file[22] + 2)))
79 #define CALL_file___String___strip_extension(recv) ((file___String___strip_extension_t)CALL((recv), (SFT_file[22] + 3)))
80 #define CALL_file___String___basename(recv) ((file___String___basename_t)CALL((recv), (SFT_file[22] + 4)))
81 #define CALL_file___String___dirname(recv) ((file___String___dirname_t)CALL((recv), (SFT_file[22] + 5)))
82 #define CALL_file___String___file_path(recv) ((file___String___file_path_t)CALL((recv), (SFT_file[22] + 6)))
83 #define CALL_file___String___mkdir(recv) ((file___String___mkdir_t)CALL((recv), (SFT_file[22] + 7)))
84 #define CALL_file___NativeString___file_exists(recv) ((file___NativeString___file_exists_t)CALL((recv), (SFT_file[23] + 0)))
85 #define CALL_file___NativeString___file_stat(recv) ((file___NativeString___file_stat_t)CALL((recv), (SFT_file[23] + 1)))
86 #define CALL_file___NativeString___file_mkdir(recv) ((file___NativeString___file_mkdir_t)CALL((recv), (SFT_file[23] + 2)))
87 #define CALL_file___NativeString___file_delete(recv) ((file___NativeString___file_delete_t)CALL((recv), (SFT_file[23] + 3)))
88 #define ID_FileStat (SFT_file[24])
89 #define COLOR_FileStat (SFT_file[25])
90 #define INIT_TABLE_POS_FileStat (SFT_file[26] + 0)
91 #define CALL_file___FileStat___mode(recv) ((file___FileStat___mode_t)CALL((recv), (SFT_file[26] + 1)))
92 #define CALL_file___FileStat___atime(recv) ((file___FileStat___atime_t)CALL((recv), (SFT_file[26] + 2)))
93 #define CALL_file___FileStat___ctime(recv) ((file___FileStat___ctime_t)CALL((recv), (SFT_file[26] + 3)))
94 #define CALL_file___FileStat___mtime(recv) ((file___FileStat___mtime_t)CALL((recv), (SFT_file[26] + 4)))
95 #define CALL_file___FileStat___size(recv) ((file___FileStat___size_t)CALL((recv), (SFT_file[26] + 5)))
96 #define ID_NativeFile (SFT_file[27])
97 #define COLOR_NativeFile (SFT_file[28])
98 #define INIT_TABLE_POS_NativeFile (SFT_file[29] + 0)
99 #define CALL_file___NativeFile___io_read(recv) ((file___NativeFile___io_read_t)CALL((recv), (SFT_file[29] + 1)))
100 #define CALL_file___NativeFile___io_write(recv) ((file___NativeFile___io_write_t)CALL((recv), (SFT_file[29] + 2)))
101 #define CALL_file___NativeFile___io_close(recv) ((file___NativeFile___io_close_t)CALL((recv), (SFT_file[29] + 3)))
102 #define CALL_file___NativeFile___file_stat(recv) ((file___NativeFile___file_stat_t)CALL((recv), (SFT_file[29] + 4)))
103 #define ID_NativeFileCapable (SFT_file[30])
104 #define COLOR_NativeFileCapable (SFT_file[31])
105 #define INIT_TABLE_POS_NativeFileCapable (SFT_file[32] + 0)
106 #define CALL_file___NativeFileCapable___io_open_read(recv) ((file___NativeFileCapable___io_open_read_t)CALL((recv), (SFT_file[32] + 1)))
107 #define CALL_file___NativeFileCapable___io_open_write(recv) ((file___NativeFileCapable___io_open_write_t)CALL((recv), (SFT_file[32] + 2)))
108 #define CALL_file___NativeFileCapable___native_stdin(recv) ((file___NativeFileCapable___native_stdin_t)CALL((recv), (SFT_file[32] + 3)))
109 #define CALL_file___NativeFileCapable___native_stdout(recv) ((file___NativeFileCapable___native_stdout_t)CALL((recv), (SFT_file[32] + 4)))
110 #define CALL_file___NativeFileCapable___native_stderr(recv) ((file___NativeFileCapable___native_stderr_t)CALL((recv), (SFT_file[32] + 5)))
111 typedef void (* file___Object___printn_t
)(val_t self
, val_t param0
);
112 void file___Object___printn(val_t self
, val_t param0
);
113 #define LOCATE_file___Object___printn "file::Object::printn"
114 typedef void (* file___Object___print_t
)(val_t self
, val_t param0
);
115 void file___Object___print(val_t self
, val_t param0
);
116 #define LOCATE_file___Object___print "file::Object::print"
117 typedef val_t (* file___Object___getc_t
)(val_t self
);
118 val_t
file___Object___getc(val_t self
);
119 #define LOCATE_file___Object___getc "file::Object::getc"
120 typedef val_t (* file___Object___gets_t
)(val_t self
);
121 val_t
file___Object___gets(val_t self
);
122 #define LOCATE_file___Object___gets "file::Object::gets"
123 typedef val_t (* file___Object___stdin_t
)(val_t self
);
124 val_t
file___Object___stdin(val_t self
);
125 #define LOCATE_file___Object___stdin "file::Object::stdin"
126 typedef val_t (* file___Object___stdout_t
)(val_t self
);
127 val_t
file___Object___stdout(val_t self
);
128 #define LOCATE_file___Object___stdout "file::Object::stdout"
129 typedef val_t (* file___Object___stderr_t
)(val_t self
);
130 val_t
file___Object___stderr(val_t self
);
131 #define LOCATE_file___Object___stderr "file::Object::stderr"
132 val_t
NEW_FStream_stream___IOS___init();
133 typedef val_t (* file___FStream___path_t
)(val_t self
);
134 val_t
file___FStream___path(val_t self
);
135 #define LOCATE_file___FStream___path "file::FStream::path"
136 typedef val_t (* file___FStream___file_stat_t
)(val_t self
);
137 val_t
file___FStream___file_stat(val_t self
);
138 #define LOCATE_file___FStream___file_stat "file::FStream::file_stat"
139 typedef void (* file___IFStream___close_t
)(val_t self
);
140 void file___IFStream___close(val_t self
);
141 #define LOCATE_file___IFStream___close "file::IFStream::(stream::IOS::close)"
142 typedef void (* file___IFStream___fill_buffer_t
)(val_t self
);
143 void file___IFStream___fill_buffer(val_t self
);
144 #define LOCATE_file___IFStream___fill_buffer "file::IFStream::(stream::BufferedIStream::fill_buffer)"
145 typedef val_t (* file___IFStream___end_reached_t
)(val_t self
);
146 val_t
file___IFStream___end_reached(val_t self
);
147 #define LOCATE_file___IFStream___end_reached "file::IFStream::(stream::BufferedIStream::end_reached)"
148 typedef void (* file___IFStream___reopen_t
)(val_t self
);
149 void file___IFStream___reopen(val_t self
);
150 #define LOCATE_file___IFStream___reopen "file::IFStream::reopen"
151 typedef void (* file___IFStream___open_t
)(val_t self
, val_t param0
, int* init_table
);
152 void file___IFStream___open(val_t self
, val_t param0
, int* init_table
);
153 #define LOCATE_file___IFStream___open "file::IFStream::open"
154 val_t
NEW_IFStream_file___IFStream___open(val_t p0
);
155 typedef void (* file___IFStream___init_t
)(val_t self
, int* init_table
);
156 void file___IFStream___init(val_t self
, int* init_table
);
157 #define LOCATE_file___IFStream___init "file::IFStream::init"
158 val_t
NEW_IFStream_file___IFStream___init();
159 typedef void (* file___IFStream___without_file_t
)(val_t self
, int* init_table
);
160 void file___IFStream___without_file(val_t self
, int* init_table
);
161 #define LOCATE_file___IFStream___without_file "file::IFStream::without_file"
162 val_t
NEW_IFStream_file___IFStream___without_file();
163 typedef void (* file___OFStream___close_t
)(val_t self
);
164 void file___OFStream___close(val_t self
);
165 #define LOCATE_file___OFStream___close "file::OFStream::(stream::IOS::close)"
166 typedef void (* file___OFStream___write_t
)(val_t self
, val_t param0
);
167 void file___OFStream___write(val_t self
, val_t param0
);
168 #define LOCATE_file___OFStream___write "file::OFStream::(stream::OStream::write)"
169 typedef val_t (* file___OFStream___is_writable_t
)(val_t self
);
170 val_t
file___OFStream___is_writable(val_t self
);
171 #define LOCATE_file___OFStream___is_writable "file::OFStream::(stream::OStream::is_writable)"
172 typedef void (* file___OFStream___write_native_t
)(val_t self
, val_t param0
, val_t param1
);
173 void file___OFStream___write_native(val_t self
, val_t param0
, val_t param1
);
174 #define LOCATE_file___OFStream___write_native "file::OFStream::write_native"
175 typedef void (* file___OFStream___open_t
)(val_t self
, val_t param0
, int* init_table
);
176 void file___OFStream___open(val_t self
, val_t param0
, int* init_table
);
177 #define LOCATE_file___OFStream___open "file::OFStream::open"
178 val_t
NEW_OFStream_file___OFStream___open(val_t p0
);
179 typedef void (* file___OFStream___init_t
)(val_t self
, int* init_table
);
180 void file___OFStream___init(val_t self
, int* init_table
);
181 #define LOCATE_file___OFStream___init "file::OFStream::init"
182 val_t
NEW_OFStream_file___OFStream___init();
183 typedef void (* file___OFStream___without_file_t
)(val_t self
, int* init_table
);
184 void file___OFStream___without_file(val_t self
, int* init_table
);
185 #define LOCATE_file___OFStream___without_file "file::OFStream::without_file"
186 val_t
NEW_OFStream_file___OFStream___without_file();
187 typedef void (* file___Stdin___init_t
)(val_t self
, int* init_table
);
188 void file___Stdin___init(val_t self
, int* init_table
);
189 #define LOCATE_file___Stdin___init "file::Stdin::init"
190 val_t
NEW_Stdin_file___Stdin___init();
191 typedef void (* file___Stdout___init_t
)(val_t self
, int* init_table
);
192 void file___Stdout___init(val_t self
, int* init_table
);
193 #define LOCATE_file___Stdout___init "file::Stdout::init"
194 val_t
NEW_Stdout_file___Stdout___init();
195 typedef void (* file___Stderr___init_t
)(val_t self
, int* init_table
);
196 void file___Stderr___init(val_t self
, int* init_table
);
197 #define LOCATE_file___Stderr___init "file::Stderr::init"
198 val_t
NEW_Stderr_file___Stderr___init();
199 val_t
NEW_String_string___String___init();
200 val_t
NEW_String_string___String___from(val_t p0
);
201 val_t
NEW_String_string___String___with_capacity(val_t p0
);
202 val_t
NEW_String_string___String___with_native(val_t p0
, val_t p1
);
203 val_t
NEW_String_string___String___from_cstring(val_t p0
);
204 val_t
NEW_String_string___String___filled_with(val_t p0
, val_t p1
);
205 typedef val_t (* file___String___file_exists_t
)(val_t self
);
206 val_t
file___String___file_exists(val_t self
);
207 #define LOCATE_file___String___file_exists "file::String::file_exists"
208 typedef val_t (* file___String___file_stat_t
)(val_t self
);
209 val_t
file___String___file_stat(val_t self
);
210 #define LOCATE_file___String___file_stat "file::String::file_stat"
211 typedef val_t (* file___String___file_delete_t
)(val_t self
);
212 val_t
file___String___file_delete(val_t self
);
213 #define LOCATE_file___String___file_delete "file::String::file_delete"
214 typedef val_t (* file___String___strip_extension_t
)(val_t self
, val_t param0
);
215 val_t
file___String___strip_extension(val_t self
, val_t param0
);
216 #define LOCATE_file___String___strip_extension "file::String::strip_extension"
217 typedef val_t (* file___String___basename_t
)(val_t self
, val_t param0
);
218 val_t
file___String___basename(val_t self
, val_t param0
);
219 #define LOCATE_file___String___basename "file::String::basename"
220 typedef val_t (* file___String___dirname_t
)(val_t self
);
221 val_t
file___String___dirname(val_t self
);
222 #define LOCATE_file___String___dirname "file::String::dirname"
223 typedef val_t (* file___String___file_path_t
)(val_t self
);
224 val_t
file___String___file_path(val_t self
);
225 #define LOCATE_file___String___file_path "file::String::file_path"
226 typedef void (* file___String___mkdir_t
)(val_t self
);
227 void file___String___mkdir(val_t self
);
228 #define LOCATE_file___String___mkdir "file::String::mkdir"
229 val_t
NEW_NativeString_string___NativeString___init();
230 typedef val_t (* file___NativeString___file_exists_t
)(val_t self
);
231 val_t
file___NativeString___file_exists(val_t self
);
232 #define LOCATE_file___NativeString___file_exists "file::NativeString::file_exists"
233 typedef val_t (* file___NativeString___file_stat_t
)(val_t self
);
234 val_t
file___NativeString___file_stat(val_t self
);
235 #define LOCATE_file___NativeString___file_stat "file::NativeString::file_stat"
236 typedef val_t (* file___NativeString___file_mkdir_t
)(val_t self
);
237 val_t
file___NativeString___file_mkdir(val_t self
);
238 #define LOCATE_file___NativeString___file_mkdir "file::NativeString::file_mkdir"
239 typedef val_t (* file___NativeString___file_delete_t
)(val_t self
);
240 val_t
file___NativeString___file_delete(val_t self
);
241 #define LOCATE_file___NativeString___file_delete "file::NativeString::file_delete"
242 typedef val_t (* file___FileStat___mode_t
)(val_t self
);
243 val_t
file___FileStat___mode(val_t self
);
244 #define LOCATE_file___FileStat___mode "file::FileStat::mode"
245 typedef val_t (* file___FileStat___atime_t
)(val_t self
);
246 val_t
file___FileStat___atime(val_t self
);
247 #define LOCATE_file___FileStat___atime "file::FileStat::atime"
248 typedef val_t (* file___FileStat___ctime_t
)(val_t self
);
249 val_t
file___FileStat___ctime(val_t self
);
250 #define LOCATE_file___FileStat___ctime "file::FileStat::ctime"
251 typedef val_t (* file___FileStat___mtime_t
)(val_t self
);
252 val_t
file___FileStat___mtime(val_t self
);
253 #define LOCATE_file___FileStat___mtime "file::FileStat::mtime"
254 typedef val_t (* file___FileStat___size_t
)(val_t self
);
255 val_t
file___FileStat___size(val_t self
);
256 #define LOCATE_file___FileStat___size "file::FileStat::size"
257 typedef val_t (* file___NativeFile___io_read_t
)(val_t self
, val_t param0
, val_t param1
);
258 val_t
file___NativeFile___io_read(val_t self
, val_t param0
, val_t param1
);
259 #define LOCATE_file___NativeFile___io_read "file::NativeFile::io_read"
260 typedef val_t (* file___NativeFile___io_write_t
)(val_t self
, val_t param0
, val_t param1
);
261 val_t
file___NativeFile___io_write(val_t self
, val_t param0
, val_t param1
);
262 #define LOCATE_file___NativeFile___io_write "file::NativeFile::io_write"
263 typedef val_t (* file___NativeFile___io_close_t
)(val_t self
);
264 val_t
file___NativeFile___io_close(val_t self
);
265 #define LOCATE_file___NativeFile___io_close "file::NativeFile::io_close"
266 typedef val_t (* file___NativeFile___file_stat_t
)(val_t self
);
267 val_t
file___NativeFile___file_stat(val_t self
);
268 #define LOCATE_file___NativeFile___file_stat "file::NativeFile::file_stat"
269 typedef val_t (* file___NativeFileCapable___io_open_read_t
)(val_t self
, val_t param0
);
270 val_t
file___NativeFileCapable___io_open_read(val_t self
, val_t param0
);
271 #define LOCATE_file___NativeFileCapable___io_open_read "file::NativeFileCapable::io_open_read"
272 typedef val_t (* file___NativeFileCapable___io_open_write_t
)(val_t self
, val_t param0
);
273 val_t
file___NativeFileCapable___io_open_write(val_t self
, val_t param0
);
274 #define LOCATE_file___NativeFileCapable___io_open_write "file::NativeFileCapable::io_open_write"
275 typedef val_t (* file___NativeFileCapable___native_stdin_t
)(val_t self
);
276 val_t
file___NativeFileCapable___native_stdin(val_t self
);
277 #define LOCATE_file___NativeFileCapable___native_stdin "file::NativeFileCapable::native_stdin"
278 typedef val_t (* file___NativeFileCapable___native_stdout_t
)(val_t self
);
279 val_t
file___NativeFileCapable___native_stdout(val_t self
);
280 #define LOCATE_file___NativeFileCapable___native_stdout "file::NativeFileCapable::native_stdout"
281 typedef val_t (* file___NativeFileCapable___native_stderr_t
)(val_t self
);
282 val_t
file___NativeFileCapable___native_stderr(val_t self
);
283 #define LOCATE_file___NativeFileCapable___native_stderr "file::NativeFileCapable::native_stderr"