compiler/libec: (#307, #70) Warning on undeclared class; Overriding namespaces
[sdk] / compiler / bootstrap / ecere / bootstrap / File.c
1 /* Code generated from eC source file: File.ec */
2 #if defined(_WIN32)
3 #define __runtimePlatform 1
4 #elif defined(__APPLE__)
5 #define __runtimePlatform 3
6 #else
7 #define __runtimePlatform 2
8 #endif
9 #if defined(__GNUC__)
10 typedef long long int64;
11 typedef unsigned long long uint64;
12 #ifndef _WIN32
13 #define __declspec(x)
14 #endif
15 #elif defined(__TINYC__)
16 #include <stdarg.h>
17 #define __builtin_va_list va_list
18 #define __builtin_va_start va_start
19 #define __builtin_va_end va_end
20 #ifdef _WIN32
21 #define strcasecmp stricmp
22 #define strncasecmp strnicmp
23 #define __declspec(x) __attribute__((x))
24 #else
25 #define __declspec(x)
26 #endif
27 typedef long long int64;
28 typedef unsigned long long uint64;
29 #else
30 typedef __int64 int64;
31 typedef unsigned __int64 uint64;
32 #endif
33 #ifdef __BIG_ENDIAN__
34 #define __ENDIAN_PAD(x) (8 - (x))
35 #else
36 #define __ENDIAN_PAD(x) 0
37 #endif
38 #include <stdint.h>
39 #include <sys/types.h>
40 void exit(int status);
41
42 void * calloc(size_t nmemb, size_t size);
43
44 void free(void * ptr);
45
46 void * malloc(size_t size);
47
48 void * realloc(void * ptr, size_t size);
49
50 long int strtol(const char * nptr, char ** endptr, int base);
51
52 long long int strtoll(const char * nptr, char ** endptr, int base);
53
54 unsigned long long int strtoull(const char * nptr, char ** endptr, int base);
55
56 typedef __builtin_va_list va_list;
57
58 typedef void FILE;
59
60 FILE * bsl_stdin(void);
61
62 FILE * bsl_stdout(void);
63
64 FILE * bsl_stderr(void);
65
66 char * fgets(char * s, int size, FILE * stream);
67
68 FILE * fopen(const char * path, const char * mode);
69
70 int fclose(FILE * fp);
71
72 int fflush(FILE * stream);
73
74 int fgetc(FILE * stream);
75
76 int fprintf(FILE * stream, const char * format, ...);
77
78 int fputc(int c, FILE * stream);
79
80 size_t fread(void * ptr, size_t size, size_t nmemb, FILE * stream);
81
82 size_t fwrite(const void * ptr, size_t size, size_t nmemb, FILE * stream);
83
84 int vsnprintf(char *, size_t, const char *, va_list args);
85
86 int snprintf(char * str, size_t, const char * format, ...);
87
88 int fseek(FILE * stream, long offset, int whence);
89
90 long ftell(FILE * stream);
91
92 int feof(FILE * stream);
93
94 int ferror(FILE * stream);
95
96 int fileno(FILE * stream);
97
98 FILE * eC_stdin(void);
99
100 FILE * eC_stdout(void);
101
102 unsigned int FILE_GetSize(FILE * input);
103
104 unsigned int FILE_Lock(FILE * input, FILE * output, int type, uint64 start, uint64 length, unsigned int wait);
105
106 void FILE_set_buffered(FILE * input, FILE * output, unsigned int value);
107
108 unsigned int FILE_FileExists(const char * fileName);
109
110 unsigned int FILE_FileGetSize(const char * fileName, unsigned int * size);
111
112 void FILE_FileFixCase(char * file);
113
114 void FILE_FileOpen(const char * fileName, int mode, FILE ** input, FILE ** output);
115
116 struct __ecereNameSpace__ecere__sys__File
117 {
118 FILE * input, * output;
119 } __attribute__ ((gcc_struct));
120
121 struct __ecereNameSpace__ecere__sys__FileStats
122 {
123 unsigned int attribs;
124 unsigned int size;
125 int64 accessed;
126 int64 modified;
127 int64 created;
128 } __attribute__ ((gcc_struct));
129
130 static int __ecereNameSpace__ecere__sys__openCount;
131
132 struct __ecereNameSpace__ecere__com__Instance * __ecereNameSpace__ecere__sys__CreateTemporaryFile(char * tempFileName, const char * template)
133 {
134 return (((void *)0));
135 }
136
137 void __ecereNameSpace__ecere__sys__CreateTemporaryDir(char * tempFileName, const char * template)
138 {
139 }
140
141 struct __ecereNameSpace__ecere__sys__BTNode;
142
143 struct __ecereNameSpace__ecere__sys__OldList
144 {
145 void *  first;
146 void *  last;
147 int count;
148 unsigned int offset;
149 unsigned int circ;
150 } __attribute__ ((gcc_struct));
151
152 struct __ecereNameSpace__ecere__com__DataValue
153 {
154 union
155 {
156 char c;
157 unsigned char uc;
158 short s;
159 unsigned short us;
160 int i;
161 unsigned int ui;
162 void *  p;
163 float f;
164 double d;
165 long long i64;
166 uint64 ui64;
167 } __attribute__ ((gcc_struct)) __anon1;
168 } __attribute__ ((gcc_struct));
169
170 struct __ecereNameSpace__ecere__com__SerialBuffer
171 {
172 unsigned char *  _buffer;
173 unsigned int count;
174 unsigned int _size;
175 unsigned int pos;
176 } __attribute__ ((gcc_struct));
177
178 extern void *  __ecereNameSpace__ecere__com__eSystem_New(unsigned int size);
179
180 extern void *  __ecereNameSpace__ecere__com__eSystem_New0(unsigned int size);
181
182 extern void *  __ecereNameSpace__ecere__com__eSystem_Renew(void *  memory, unsigned int size);
183
184 extern void *  __ecereNameSpace__ecere__com__eSystem_Renew0(void *  memory, unsigned int size);
185
186 extern void __ecereNameSpace__ecere__com__eSystem_Delete(void *  memory);
187
188 extern void __ecereNameSpace__ecere__sys__PrintSize(char *  string, unsigned int size, int prec);
189
190 extern double strtod(const char * , char * * );
191
192 extern char *  strstr(const char * , const char * );
193
194 extern void __ecereNameSpace__ecere__sys__PrintBigSize(char *  string, double size, int prec);
195
196 struct __ecereNameSpace__ecere__sys__TempFile
197 {
198 unsigned char *  buffer;
199 unsigned int size;
200 unsigned int position;
201 unsigned int eof;
202 int openMode;
203 unsigned int allocated;
204 } __attribute__ ((gcc_struct));
205
206 extern int fputs(const char * , void *  stream);
207
208 extern size_t strlen(const char * );
209
210 extern int atoi(const char * );
211
212 extern unsigned long strtoul(const char *  nptr, char * *  endptr, int base);
213
214 extern double __ecereNameSpace__ecere__sys__FloatFromString(const char *  string);
215
216 extern void __ecereNameSpace__ecere__sys__ChangeCh(char *  string, char ch1, char ch2);
217
218 extern char *  __ecereNameSpace__ecere__sys__CopyString(const char *  string);
219
220 extern char *  strcpy(char * , const char * );
221
222 struct __ecereNameSpace__ecere__com__BitMember;
223
224 struct __ecereNameSpace__ecere__com__GlobalFunction;
225
226 unsigned int __ecereNameSpace__ecere__sys__FileExists(const char * fileName)
227 {
228 return FILE_FileExists(fileName);
229 }
230
231 unsigned int __ecereNameSpace__ecere__sys__FileGetSize(const char * fileName, unsigned int * size)
232 {
233 unsigned int result = 0;
234
235 if(size)
236 {
237 *size = 0;
238 if(fileName)
239 {
240 result = FILE_FileGetSize(fileName, size);
241 }
242 }
243 return result;
244 }
245
246 void __ecereNameSpace__ecere__sys__FileFixCase(char * file)
247 {
248 FILE_FileFixCase(file);
249 }
250
251 unsigned int FILE_FileGetStats(const char * fileName, struct __ecereNameSpace__ecere__sys__FileStats * stats);
252
253 void __ecereNameSpace__ecere__sys__MakeSlashPath(char * p)
254 {
255 __ecereNameSpace__ecere__sys__FileFixCase(p);
256 __ecereNameSpace__ecere__sys__ChangeCh(p, '\\', '/');
257 }
258
259 void __ecereNameSpace__ecere__sys__MakeSystemPath(char * p)
260 {
261 __ecereNameSpace__ecere__sys__FileFixCase(p);
262 }
263
264 unsigned int __ecereNameSpace__ecere__sys__FileGetStats(const char * fileName, struct __ecereNameSpace__ecere__sys__FileStats * stats)
265 {
266 unsigned int result = 0;
267
268 if(stats && fileName)
269 {
270 return FILE_FileGetStats(fileName, stats);
271 }
272 return result;
273 }
274
275 char * __ecereNameSpace__ecere__sys__CopyUnixPath(const char * p)
276 {
277 char * d = __ecereNameSpace__ecere__sys__CopyString(p);
278
279 if(d)
280 __ecereNameSpace__ecere__sys__MakeSlashPath(d);
281 return d;
282 }
283
284 char * __ecereNameSpace__ecere__sys__GetSlashPathBuffer(char * d, const char * p)
285 {
286 if(d != p)
287 strcpy(d, p ? p : "");
288 __ecereNameSpace__ecere__sys__MakeSlashPath(d);
289 return d;
290 }
291
292 char * __ecereNameSpace__ecere__sys__CopySystemPath(const char * p)
293 {
294 char * d = __ecereNameSpace__ecere__sys__CopyString(p);
295
296 if(d)
297 __ecereNameSpace__ecere__sys__MakeSystemPath(d);
298 return d;
299 }
300
301 char * __ecereNameSpace__ecere__sys__GetSystemPathBuffer(char * d, const char * p)
302 {
303 if(d != p)
304 strcpy(d, p ? p : "");
305 __ecereNameSpace__ecere__sys__MakeSystemPath(d);
306 return d;
307 }
308
309 struct __ecereNameSpace__ecere__com__Property;
310
311 extern void __ecereNameSpace__ecere__com__eInstance_Watch(void *  instance, struct __ecereNameSpace__ecere__com__Property * _property, void *  object, void (*  callback)(void * , void * ));
312
313 static __attribute__((unused)) struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__sys__File_input, * __ecerePropM___ecereNameSpace__ecere__sys__File_input;
314
315 static __attribute__((unused)) struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__sys__File_output, * __ecerePropM___ecereNameSpace__ecere__sys__File_output;
316
317 static __attribute__((unused)) struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__sys__File_buffered, * __ecerePropM___ecereNameSpace__ecere__sys__File_buffered;
318
319 static __attribute__((unused)) struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__sys__File_eof, * __ecerePropM___ecereNameSpace__ecere__sys__File_eof;
320
321 struct __ecereNameSpace__ecere__com__Class;
322
323 struct __ecereNameSpace__ecere__com__Instance
324 {
325 void * *  _vTbl;
326 struct __ecereNameSpace__ecere__com__Class * _class;
327 int _refCount;
328 } __attribute__ ((gcc_struct));
329
330 extern long long __ecereNameSpace__ecere__com__eClass_GetProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char *  name);
331
332 extern void __ecereNameSpace__ecere__com__eClass_SetProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char *  name, long long value);
333
334 extern unsigned int __ecereNameSpace__ecere__com__eClass_IsDerived(struct __ecereNameSpace__ecere__com__Class * _class, struct __ecereNameSpace__ecere__com__Class * from);
335
336 extern void __ecereNameSpace__ecere__com__eEnum_AddFixedValue(struct __ecereNameSpace__ecere__com__Class * _class, const char *  string, long long value);
337
338 extern struct __ecereNameSpace__ecere__com__Property * __ecereNameSpace__ecere__com__eClass_AddProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char *  name, const char *  dataType, void *  setStmt, void *  getStmt, int declMode);
339
340 extern struct __ecereNameSpace__ecere__com__BitMember * __ecereNameSpace__ecere__com__eClass_AddBitMember(struct __ecereNameSpace__ecere__com__Class * _class, const char *  name, const char *  type, int bitSize, int bitPos, int declMode);
341
342 extern void *  __ecereNameSpace__ecere__com__eInstance_New(struct __ecereNameSpace__ecere__com__Class * _class);
343
344 int __ecereVMethodID___ecereNameSpace__ecere__sys__FileSystem_Open;
345
346 int __ecereVMethodID___ecereNameSpace__ecere__sys__FileSystem_Exists;
347
348 int __ecereVMethodID___ecereNameSpace__ecere__sys__FileSystem_GetSize;
349
350 int __ecereVMethodID___ecereNameSpace__ecere__sys__FileSystem_Stats;
351
352 int __ecereVMethodID___ecereNameSpace__ecere__sys__FileSystem_FixCase;
353
354 int __ecereVMethodID___ecereNameSpace__ecere__sys__FileSystem_Find;
355
356 int __ecereVMethodID___ecereNameSpace__ecere__sys__FileSystem_FindNext;
357
358 int __ecereVMethodID___ecereNameSpace__ecere__sys__FileSystem_CloseDir;
359
360 int __ecereVMethodID___ecereNameSpace__ecere__sys__FileSystem_OpenArchive;
361
362 int __ecereVMethodID___ecereNameSpace__ecere__sys__FileSystem_QuerySize;
363
364 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek;
365
366 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Tell;
367
368 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Read;
369
370 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Write;
371
372 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Getc;
373
374 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Putc;
375
376 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts;
377
378 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Eof;
379
380 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Truncate;
381
382 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_GetSize;
383
384 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_CloseInput;
385
386 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_CloseOutput;
387
388 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Lock;
389
390 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Unlock;
391
392 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Close;
393
394 struct __ecereNameSpace__ecere__com__Property
395 {
396 struct __ecereNameSpace__ecere__com__Property * prev;
397 struct __ecereNameSpace__ecere__com__Property * next;
398 const char *  name;
399 unsigned int isProperty;
400 int memberAccess;
401 int id;
402 struct __ecereNameSpace__ecere__com__Class * _class;
403 const char *  dataTypeString;
404 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
405 struct __ecereNameSpace__ecere__com__Instance * dataType;
406 void (*  Set)(void * , int);
407 int (*  Get)(void * );
408 unsigned int (*  IsSet)(void * );
409 void *  data;
410 void *  symbol;
411 int vid;
412 unsigned int conversion;
413 unsigned int watcherOffset;
414 const char *  category;
415 unsigned int compiled;
416 unsigned int selfWatchable;
417 unsigned int isWatchable;
418 } __attribute__ ((gcc_struct));
419
420 extern void __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
421
422 extern void __ecereNameSpace__ecere__com__eInstance_SetMethod(struct __ecereNameSpace__ecere__com__Instance * instance, const char *  name, void *  function);
423
424 extern void __ecereNameSpace__ecere__com__eInstance_IncRef(struct __ecereNameSpace__ecere__com__Instance * instance);
425
426 extern void __ecereNameSpace__ecere__com__eInstance_StopWatching(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property, struct __ecereNameSpace__ecere__com__Instance * object);
427
428 extern void __ecereNameSpace__ecere__com__eInstance_FireWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
429
430 struct __ecereNameSpace__ecere__com__Instance * __ecereNameSpace__ecere__sys__httpFileSystem;
431
432 void *  __ecereProp___ecereNameSpace__ecere__sys__File_Get_input(struct __ecereNameSpace__ecere__com__Instance * this);
433
434 void __ecereProp___ecereNameSpace__ecere__sys__File_Set_input(struct __ecereNameSpace__ecere__com__Instance * this, void *  value);
435
436 void *  __ecereProp___ecereNameSpace__ecere__sys__File_Get_output(struct __ecereNameSpace__ecere__com__Instance * this);
437
438 void __ecereProp___ecereNameSpace__ecere__sys__File_Set_output(struct __ecereNameSpace__ecere__com__Instance * this, void *  value);
439
440 void __ecereProp___ecereNameSpace__ecere__sys__File_Set_buffered(struct __ecereNameSpace__ecere__com__Instance * this, unsigned int value);
441
442 extern void __ecereNameSpace__ecere__com__eInstance_DecRef(struct __ecereNameSpace__ecere__com__Instance * instance);
443
444 unsigned int __ecereConstructor___ecereNameSpace__ecere__sys__ConsoleFile(struct __ecereNameSpace__ecere__com__Instance * this)
445 {
446 __ecereProp___ecereNameSpace__ecere__sys__File_Set_input(this, eC_stdin());
447 __ecereProp___ecereNameSpace__ecere__sys__File_Set_output(this, eC_stdout());
448 return 1;
449 }
450
451 void __ecereDestructor___ecereNameSpace__ecere__sys__ConsoleFile(struct __ecereNameSpace__ecere__com__Instance * this)
452 {
453 {
454 __ecereProp___ecereNameSpace__ecere__sys__File_Set_input(this, (((void *)0)));
455 __ecereProp___ecereNameSpace__ecere__sys__File_Set_output(this, (((void *)0)));
456 }
457 }
458
459 struct __ecereNameSpace__ecere__sys__BinaryTree;
460
461 struct __ecereNameSpace__ecere__sys__BinaryTree
462 {
463 struct __ecereNameSpace__ecere__sys__BTNode * root;
464 int count;
465 int (*  CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
466 void (*  FreeKey)(void *  key);
467 } __attribute__ ((gcc_struct));
468
469 struct __ecereNameSpace__ecere__com__DataMember;
470
471 struct __ecereNameSpace__ecere__com__DataMember
472 {
473 struct __ecereNameSpace__ecere__com__DataMember * prev;
474 struct __ecereNameSpace__ecere__com__DataMember * next;
475 const char *  name;
476 unsigned int isProperty;
477 int memberAccess;
478 int id;
479 struct __ecereNameSpace__ecere__com__Class * _class;
480 const char *  dataTypeString;
481 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
482 struct __ecereNameSpace__ecere__com__Instance * dataType;
483 int type;
484 int offset;
485 int memberID;
486 struct __ecereNameSpace__ecere__sys__OldList members;
487 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
488 int memberOffset;
489 short structAlignment;
490 short pointerAlignment;
491 } __attribute__ ((gcc_struct));
492
493 extern struct __ecereNameSpace__ecere__com__DataMember * __ecereNameSpace__ecere__com__eClass_AddDataMember(struct __ecereNameSpace__ecere__com__Class * _class, const char *  name, const char *  type, unsigned int size, unsigned int alignment, int declMode);
494
495 struct __ecereNameSpace__ecere__com__Method;
496
497 struct __ecereNameSpace__ecere__com__ClassTemplateArgument
498 {
499 union
500 {
501 struct
502 {
503 const char *  dataTypeString;
504 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
505 } __attribute__ ((gcc_struct)) __anon1;
506 struct __ecereNameSpace__ecere__com__DataValue expression;
507 struct
508 {
509 const char *  memberString;
510 union
511 {
512 struct __ecereNameSpace__ecere__com__DataMember * member;
513 struct __ecereNameSpace__ecere__com__Property * prop;
514 struct __ecereNameSpace__ecere__com__Method * method;
515 } __attribute__ ((gcc_struct)) __anon1;
516 } __attribute__ ((gcc_struct)) __anon2;
517 } __attribute__ ((gcc_struct)) __anon1;
518 } __attribute__ ((gcc_struct));
519
520 struct __ecereNameSpace__ecere__com__Method
521 {
522 const char *  name;
523 struct __ecereNameSpace__ecere__com__Method * parent;
524 struct __ecereNameSpace__ecere__com__Method * left;
525 struct __ecereNameSpace__ecere__com__Method * right;
526 int depth;
527 int (*  function)();
528 int vid;
529 int type;
530 struct __ecereNameSpace__ecere__com__Class * _class;
531 void *  symbol;
532 const char *  dataTypeString;
533 struct __ecereNameSpace__ecere__com__Instance * dataType;
534 int memberAccess;
535 } __attribute__ ((gcc_struct));
536
537 extern struct __ecereNameSpace__ecere__com__Method * __ecereNameSpace__ecere__com__eClass_AddMethod(struct __ecereNameSpace__ecere__com__Class * _class, const char *  name, const char *  type, void *  function, int declMode);
538
539 extern struct __ecereNameSpace__ecere__com__Method * __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(struct __ecereNameSpace__ecere__com__Class * _class, const char *  name, const char *  type, void *  function, int declMode);
540
541 struct __ecereNameSpace__ecere__com__Module;
542
543 extern struct __ecereNameSpace__ecere__com__Class * __ecereNameSpace__ecere__com__eSystem_RegisterClass(int type, const char *  name, const char *  baseName, int size, int sizeClass, unsigned int (*  Constructor)(void * ), void (*  Destructor)(void * ), struct __ecereNameSpace__ecere__com__Instance * module, int declMode, int inheritanceAccess);
544
545 extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
546
547 extern struct __ecereNameSpace__ecere__com__GlobalFunction * __ecereNameSpace__ecere__com__eSystem_RegisterFunction(const char *  name, const char *  type, void *  func, struct __ecereNameSpace__ecere__com__Instance * module, int declMode);
548
549 struct __ecereNameSpace__ecere__com__NameSpace;
550
551 struct __ecereNameSpace__ecere__com__NameSpace
552 {
553 const char *  name;
554 struct __ecereNameSpace__ecere__com__NameSpace *  btParent;
555 struct __ecereNameSpace__ecere__com__NameSpace *  left;
556 struct __ecereNameSpace__ecere__com__NameSpace *  right;
557 int depth;
558 struct __ecereNameSpace__ecere__com__NameSpace *  parent;
559 struct __ecereNameSpace__ecere__sys__BinaryTree nameSpaces;
560 struct __ecereNameSpace__ecere__sys__BinaryTree classes;
561 struct __ecereNameSpace__ecere__sys__BinaryTree defines;
562 struct __ecereNameSpace__ecere__sys__BinaryTree functions;
563 } __attribute__ ((gcc_struct));
564
565 struct __ecereNameSpace__ecere__com__Class
566 {
567 struct __ecereNameSpace__ecere__com__Class * prev;
568 struct __ecereNameSpace__ecere__com__Class * next;
569 const char *  name;
570 int offset;
571 int structSize;
572 void * *  _vTbl;
573 int vTblSize;
574 unsigned int (*  Constructor)(void * );
575 void (*  Destructor)(void * );
576 int offsetClass;
577 int sizeClass;
578 struct __ecereNameSpace__ecere__com__Class * base;
579 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
580 struct __ecereNameSpace__ecere__sys__BinaryTree members;
581 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
582 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
583 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
584 struct __ecereNameSpace__ecere__sys__OldList derivatives;
585 int memberID;
586 int startMemberID;
587 int type;
588 struct __ecereNameSpace__ecere__com__Instance * module;
589 struct __ecereNameSpace__ecere__com__NameSpace *  nameSpace;
590 const char *  dataTypeString;
591 struct __ecereNameSpace__ecere__com__Instance * dataType;
592 int typeSize;
593 int defaultAlignment;
594 void (*  Initialize)();
595 int memberOffset;
596 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
597 const char *  designerClass;
598 unsigned int noExpansion;
599 const char *  defaultProperty;
600 unsigned int comRedefinition;
601 int count;
602 int isRemote;
603 unsigned int internalDecl;
604 void *  data;
605 unsigned int computeSize;
606 short structAlignment;
607 short pointerAlignment;
608 int destructionWatchOffset;
609 unsigned int fixed;
610 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
611 int inheritanceAccess;
612 const char *  fullName;
613 void *  symbol;
614 struct __ecereNameSpace__ecere__sys__OldList conversions;
615 struct __ecereNameSpace__ecere__sys__OldList templateParams;
616 struct __ecereNameSpace__ecere__com__ClassTemplateArgument *  templateArgs;
617 struct __ecereNameSpace__ecere__com__Class * templateClass;
618 struct __ecereNameSpace__ecere__sys__OldList templatized;
619 int numParams;
620 unsigned int isInstanceClass;
621 unsigned int byValueSystemClass;
622 } __attribute__ ((gcc_struct));
623
624 struct __ecereNameSpace__ecere__com__Application
625 {
626 int argc;
627 const char * *  argv;
628 int exitCode;
629 unsigned int isGUIApp;
630 struct __ecereNameSpace__ecere__sys__OldList allModules;
631 char *  parsedCommand;
632 struct __ecereNameSpace__ecere__com__NameSpace systemNameSpace;
633 } __attribute__ ((gcc_struct));
634
635 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__FileSize;
636
637 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__FileSize64;
638
639 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__FileSystem;
640
641 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__FileOpenMode;
642
643 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__FileSeekMode;
644
645 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__FileLock;
646
647 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__File;
648
649 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__ConsoleFile;
650
651 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__FileAttribs;
652
653 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__SecSince1970;
654
655 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__FileStats;
656
657 int __ecereMethod___ecereNameSpace__ecere__sys__FileSize_OnCompare(struct __ecereNameSpace__ecere__com__Class * class, unsigned int * this, unsigned int * data2)
658 {
659 int result = 0;
660
661 if(&(*this) && &(*data2))
662 {
663 if((*this) > (*data2))
664 result = 1;
665 else if((*this) < (*data2))
666 result = -1;
667 }
668 return result;
669 }
670
671 const char * __ecereMethod___ecereNameSpace__ecere__sys__FileSize_OnGetString(struct __ecereNameSpace__ecere__com__Class * class, unsigned int * this, char * string, void * fieldData, unsigned int * needClass)
672 {
673 __ecereNameSpace__ecere__sys__PrintSize(string, *(unsigned int *)this, 2);
674 return string;
675 }
676
677 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__FileSize_OnGetDataFromString(struct __ecereNameSpace__ecere__com__Class * class, unsigned int * this, const char * string)
678 {
679 char * end;
680 double value = strtod(string, &end);
681 unsigned int multiplier = 1;
682
683 if(strstr(end, "GB") || strstr(end, "gb"))
684 multiplier = (unsigned int)1024 * 1024 * 1024;
685 else if(strstr(end, "MB") || strstr(end, "mb"))
686 multiplier = (unsigned int)1024 * 1024;
687 else if(strstr(end, "KB") || strstr(end, "kb"))
688 multiplier = 1024;
689 (*this) = (unsigned int)((double)multiplier * value);
690 return 1;
691 }
692
693 int __ecereMethod___ecereNameSpace__ecere__sys__FileSize64_OnCompare(struct __ecereNameSpace__ecere__com__Class * class, uint64 * this, uint64 * data2)
694 {
695 int result = 0;
696
697 if(&(*this) && &(*data2))
698 {
699 if((*this) > (*data2))
700 result = 1;
701 else if((*this) < (*data2))
702 result = -1;
703 }
704 return result;
705 }
706
707 const char * __ecereMethod___ecereNameSpace__ecere__sys__FileSize64_OnGetString(struct __ecereNameSpace__ecere__com__Class * class, uint64 * this, char * string, void * fieldData, unsigned int * needClass)
708 {
709 __ecereNameSpace__ecere__sys__PrintBigSize(string, *(uint64 *)this, 2);
710 return string;
711 }
712
713 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__FileSize64_OnGetDataFromString(struct __ecereNameSpace__ecere__com__Class * class, uint64 * this, const char * string)
714 {
715 char * end;
716 double value = strtod(string, &end);
717 uint64 multiplier = 1;
718
719 if(strstr(end, "PB") || strstr(end, "pb"))
720 multiplier = (uint64)1024 * 1024 * 1024 * 1024;
721 else if(strstr(end, "TB") || strstr(end, "tb"))
722 multiplier = (uint64)1024 * 1024 * 1024 * 1024;
723 else if(strstr(end, "GB") || strstr(end, "gb"))
724 multiplier = (uint64)1024 * 1024 * 1024;
725 else if(strstr(end, "MB") || strstr(end, "mb"))
726 multiplier = (uint64)1024 * 1024;
727 else if(strstr(end, "KB") || strstr(end, "kb"))
728 multiplier = 1024;
729 (*this) = (uint64)((double)multiplier * value);
730 return 1;
731 }
732
733 extern int __ecereNameSpace__ecere__com__PrintStdArgsToBuffer(char *  buffer, int maxLen, struct __ecereNameSpace__ecere__com__Class * class, const void * object, __builtin_va_list args);
734
735 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__TempFile;
736
737 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Instance;
738
739 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Module;
740
741 struct __ecereNameSpace__ecere__com__Module
742 {
743 struct __ecereNameSpace__ecere__com__Instance * application;
744 struct __ecereNameSpace__ecere__sys__OldList classes;
745 struct __ecereNameSpace__ecere__sys__OldList defines;
746 struct __ecereNameSpace__ecere__sys__OldList functions;
747 struct __ecereNameSpace__ecere__sys__OldList modules;
748 struct __ecereNameSpace__ecere__com__Instance * prev;
749 struct __ecereNameSpace__ecere__com__Instance * next;
750 const char *  name;
751 void *  library;
752 void *  Unload;
753 int importType;
754 int origImportType;
755 struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace;
756 struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
757 } __attribute__ ((gcc_struct));
758
759 void __ecereDestructor___ecereNameSpace__ecere__sys__File(struct __ecereNameSpace__ecere__com__Instance * this)
760 {
761 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
762
763 {
764 if(__ecerePointer___ecereNameSpace__ecere__sys__File->output && __ecerePointer___ecereNameSpace__ecere__sys__File->output != __ecerePointer___ecereNameSpace__ecere__sys__File->input)
765 {
766 __ecereNameSpace__ecere__sys__openCount--;
767 fclose(__ecerePointer___ecereNameSpace__ecere__sys__File->output);
768 }
769 if(__ecerePointer___ecereNameSpace__ecere__sys__File->input)
770 {
771 __ecereNameSpace__ecere__sys__openCount--;
772 fclose(__ecerePointer___ecereNameSpace__ecere__sys__File->input);
773 }
774 __ecerePointer___ecereNameSpace__ecere__sys__File->input = (((void *)0));
775 __ecerePointer___ecereNameSpace__ecere__sys__File->output = (((void *)0));
776 }
777 }
778
779 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_ReadData(struct __ecereNameSpace__ecere__com__Instance * this, unsigned char * bytes, unsigned int numBytes)
780 {
781 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
782
783 return ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void *  buffer, unsigned int size, unsigned int count))__extension__ ({
784 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
785
786 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
787 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(this, bytes, 1, numBytes);
788 }
789
790 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_WriteData(struct __ecereNameSpace__ecere__com__Instance * this, const unsigned char * bytes, unsigned int numBytes)
791 {
792 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
793
794 return ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, const void *  buffer, unsigned int size, unsigned int count))__extension__ ({
795 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
796
797 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
798 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Write])(this, bytes, 1, numBytes);
799 }
800
801 const char * __ecereMethod___ecereNameSpace__ecere__sys__File_OnGetString(struct __ecereNameSpace__ecere__com__Class * class, struct __ecereNameSpace__ecere__com__Instance * this, char * tempString, void * fieldData, unsigned int * needClass)
802 {
803 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
804
805 if((struct __ecereNameSpace__ecere__com__Instance *)this)
806 {
807 __ecereNameSpace__ecere__sys__PrintSize(tempString, ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *))__extension__ ({
808 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
809
810 __internal_ClassInst ? __internal_ClassInst->_vTbl : class->_vTbl;
811 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_GetSize])(this), 2);
812 return tempString;
813 }
814 return (((void *)0));
815 }
816
817 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_Seek(struct __ecereNameSpace__ecere__com__Instance * this, int pos, int mode)
818 {
819 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
820 unsigned int fmode = 0;
821
822 switch(mode)
823 {
824 case 0:
825 fmode = 0;
826 break;
827 case 2:
828 fmode = 2;
829 break;
830 case 1:
831 fmode = 1;
832 break;
833 }
834 return fseek(__ecerePointer___ecereNameSpace__ecere__sys__File->input ? __ecerePointer___ecereNameSpace__ecere__sys__File->input : __ecerePointer___ecereNameSpace__ecere__sys__File->output, pos, fmode) != (-1);
835 }
836
837 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_Tell(struct __ecereNameSpace__ecere__com__Instance * this)
838 {
839 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
840
841 return (unsigned int)(__ecerePointer___ecereNameSpace__ecere__sys__File->input ? ftell(__ecerePointer___ecereNameSpace__ecere__sys__File->input) : ftell(__ecerePointer___ecereNameSpace__ecere__sys__File->output));
842 }
843
844 int __ecereMethod___ecereNameSpace__ecere__sys__File_Read(struct __ecereNameSpace__ecere__com__Instance * this, void * buffer, unsigned int size, unsigned int count)
845 {
846 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
847
848 return __ecerePointer___ecereNameSpace__ecere__sys__File->input ? (int)fread(buffer, size, count, __ecerePointer___ecereNameSpace__ecere__sys__File->input) : 0;
849 }
850
851 int __ecereMethod___ecereNameSpace__ecere__sys__File_Write(struct __ecereNameSpace__ecere__com__Instance * this, const void * buffer, unsigned int size, unsigned int count)
852 {
853 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
854
855 return __ecerePointer___ecereNameSpace__ecere__sys__File->output ? (int)fwrite(buffer, size, count, __ecerePointer___ecereNameSpace__ecere__sys__File->output) : 0;
856 }
857
858 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_Getc(struct __ecereNameSpace__ecere__com__Instance * this, char * ch)
859 {
860 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
861 int ich = fgetc(__ecerePointer___ecereNameSpace__ecere__sys__File->input);
862
863 if(ich != (-1))
864 {
865 if(ch)
866 *ch = (char)ich;
867 return 1;
868 }
869 return 0;
870 }
871
872 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_Putc(struct __ecereNameSpace__ecere__com__Instance * this, char ch)
873 {
874 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
875
876 return (fputc((int)ch, __ecerePointer___ecereNameSpace__ecere__sys__File->output) == (-1)) ? 0 : 1;
877 }
878
879 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_Puts(struct __ecereNameSpace__ecere__com__Instance * this, const char * string)
880 {
881 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
882 unsigned int result = 0;
883
884 if(__ecerePointer___ecereNameSpace__ecere__sys__File->output)
885 {
886 result = (fputs(string, __ecerePointer___ecereNameSpace__ecere__sys__File->output) == (-1)) ? 0 : 1;
887 }
888 return result;
889 }
890
891 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_Eof(struct __ecereNameSpace__ecere__com__Instance * this)
892 {
893 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
894
895 return __ecerePointer___ecereNameSpace__ecere__sys__File->input ? feof(__ecerePointer___ecereNameSpace__ecere__sys__File->input) != 0 : 1;
896 }
897
898 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_Truncate(struct __ecereNameSpace__ecere__com__Instance * this, unsigned int size)
899 {
900 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
901
902 fprintf((bsl_stderr()), "WARNING:  File::Truncate unimplemented in ecereBootstrap.\n");
903 return 0;
904 }
905
906 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_GetSize(struct __ecereNameSpace__ecere__com__Instance * this)
907 {
908 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
909
910 return FILE_GetSize(__ecerePointer___ecereNameSpace__ecere__sys__File->input);
911 }
912
913 void __ecereMethod___ecereNameSpace__ecere__sys__File_CloseInput(struct __ecereNameSpace__ecere__com__Instance * this)
914 {
915 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
916
917 if(__ecerePointer___ecereNameSpace__ecere__sys__File->input)
918 {
919 fclose(__ecerePointer___ecereNameSpace__ecere__sys__File->input);
920 if(__ecerePointer___ecereNameSpace__ecere__sys__File->output == __ecerePointer___ecereNameSpace__ecere__sys__File->input)
921 __ecerePointer___ecereNameSpace__ecere__sys__File->output = (((void *)0));
922 __ecerePointer___ecereNameSpace__ecere__sys__File->input = (((void *)0));
923 }
924 }
925
926 void __ecereMethod___ecereNameSpace__ecere__sys__File_CloseOutput(struct __ecereNameSpace__ecere__com__Instance * this)
927 {
928 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
929
930 if(__ecerePointer___ecereNameSpace__ecere__sys__File->output)
931 {
932 fclose(__ecerePointer___ecereNameSpace__ecere__sys__File->output);
933 if(__ecerePointer___ecereNameSpace__ecere__sys__File->input == __ecerePointer___ecereNameSpace__ecere__sys__File->output)
934 __ecerePointer___ecereNameSpace__ecere__sys__File->input = (((void *)0));
935 __ecerePointer___ecereNameSpace__ecere__sys__File->output = (((void *)0));
936 }
937 }
938
939 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_Lock(struct __ecereNameSpace__ecere__com__Instance * this, int type, uint64 start, uint64 length, unsigned int wait)
940 {
941 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
942
943 return FILE_Lock(__ecerePointer___ecereNameSpace__ecere__sys__File->input, __ecerePointer___ecereNameSpace__ecere__sys__File->output, type, start, length, wait);
944 }
945
946 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_Unlock(struct __ecereNameSpace__ecere__com__Instance * this, uint64 start, uint64 length, unsigned int wait)
947 {
948 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
949
950 return ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int type, uint64 start, uint64 length, unsigned int wait))__extension__ ({
951 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
952
953 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
954 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Lock])(this, 0, start, length, wait);
955 }
956
957 int __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(struct __ecereNameSpace__ecere__com__Instance * this, const char * format, ...)
958 {
959 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
960 int result = 0;
961
962 if(format)
963 {
964 char text[1025];
965 va_list args;
966
967 __builtin_va_start(args, format);
968 vsnprintf(text, sizeof (text), format, args);
969 text[sizeof (text) - 1] = (char)0;
970 if(((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char *  string))__extension__ ({
971 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
972
973 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
974 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts])(this, text))
975 result = strlen(text);
976 __builtin_va_end(args);
977 }
978 return result;
979 }
980
981 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_Flush(struct __ecereNameSpace__ecere__com__Instance * this)
982 {
983 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
984
985 fflush(__ecerePointer___ecereNameSpace__ecere__sys__File->output);
986 return 1;
987 }
988
989 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_GetLine(struct __ecereNameSpace__ecere__com__Instance * this, char * s, int max)
990 {
991 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
992 int c = 0;
993 unsigned int result = 1;
994
995 s[c] = (char)0;
996 if(((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *))__extension__ ({
997 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
998
999 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1000 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Eof])(this))
1001 {
1002 result = 0;
1003 }
1004 else
1005 {
1006 while(c < max - 1)
1007 {
1008 char ch = (char)0;
1009
1010 if(!((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, char *  ch))__extension__ ({
1011 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
1012
1013 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1014 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Getc])(this, &ch))
1015 {
1016 result = 0;
1017 break;
1018 }
1019 if(ch == '\n')
1020 break;
1021 if(ch != '\r')
1022 s[c++] = ch;
1023 }
1024 }
1025 s[c] = (char)0;
1026 return result || c > 1;
1027 }
1028
1029 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_GetString(struct __ecereNameSpace__ecere__com__Instance * this, char * string, int max)
1030 {
1031 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1032 int c;
1033 char ch;
1034 unsigned int quoted = 0;
1035 unsigned int result = 1;
1036
1037 *string = (char)0;
1038 while(1)
1039 {
1040 if(!((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, char *  ch))__extension__ ({
1041 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
1042
1043 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1044 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Getc])(this, &ch))
1045 result = 0;
1046 if((ch != '\n') && (ch != '\r') && (ch != ' ') && (ch != ',') && (ch != '\t'))
1047 break;
1048 if(((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *))__extension__ ({
1049 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
1050
1051 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1052 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Eof])(this))
1053 break;
1054 }
1055 if(result)
1056 {
1057 for(c = 0; c < max - 1; c++)
1058 {
1059 if(!quoted && ((ch == '\n') || (ch == '\r') || (ch == ' ') || (ch == ',') || (ch == '\t')))
1060 {
1061 result = 1;
1062 break;
1063 }
1064 if(ch == '\"')
1065 {
1066 quoted ^= (unsigned int)1;
1067 c--;
1068 }
1069 else
1070 string[c] = ch;
1071 if(!((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, char *  ch))__extension__ ({
1072 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
1073
1074 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1075 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Getc])(this, &ch))
1076 {
1077 c++;
1078 result = 0;
1079 break;
1080 }
1081 }
1082 string[c] = (char)0;
1083 }
1084 return result;
1085 }
1086
1087 void *  __ecereProp___ecereNameSpace__ecere__sys__File_Get_input(struct __ecereNameSpace__ecere__com__Instance * this)
1088 {
1089 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1090
1091 return __ecerePointer___ecereNameSpace__ecere__sys__File->input;
1092 }
1093
1094 void __ecereProp___ecereNameSpace__ecere__sys__File_Set_input(struct __ecereNameSpace__ecere__com__Instance * this, void *  value)
1095 {
1096 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1097
1098 __ecerePointer___ecereNameSpace__ecere__sys__File->input = value;
1099 __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(this, __ecereProp___ecereNameSpace__ecere__sys__File_input), __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(this, __ecerePropM___ecereNameSpace__ecere__sys__File_input);
1100 }
1101
1102 void *  __ecereProp___ecereNameSpace__ecere__sys__File_Get_output(struct __ecereNameSpace__ecere__com__Instance * this)
1103 {
1104 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1105
1106 return __ecerePointer___ecereNameSpace__ecere__sys__File->output;
1107 }
1108
1109 void __ecereProp___ecereNameSpace__ecere__sys__File_Set_output(struct __ecereNameSpace__ecere__com__Instance * this, void *  value)
1110 {
1111 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1112
1113 __ecerePointer___ecereNameSpace__ecere__sys__File->output = value;
1114 __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(this, __ecereProp___ecereNameSpace__ecere__sys__File_output), __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(this, __ecerePropM___ecereNameSpace__ecere__sys__File_output);
1115 }
1116
1117 void __ecereProp___ecereNameSpace__ecere__sys__File_Set_buffered(struct __ecereNameSpace__ecere__com__Instance * this, unsigned int value)
1118 {
1119 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1120
1121 FILE_set_buffered(__ecerePointer___ecereNameSpace__ecere__sys__File->input, __ecerePointer___ecereNameSpace__ecere__sys__File->output, value);
1122 __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(this, __ecereProp___ecereNameSpace__ecere__sys__File_buffered), __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(this, __ecerePropM___ecereNameSpace__ecere__sys__File_buffered);
1123 }
1124
1125 unsigned int __ecereProp___ecereNameSpace__ecere__sys__File_Get_eof(struct __ecereNameSpace__ecere__com__Instance * this)
1126 {
1127 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1128
1129 return ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *))__extension__ ({
1130 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
1131
1132 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1133 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Eof])(this);
1134 }
1135
1136 int __ecereMethod___ecereNameSpace__ecere__sys__File_GetLineEx(struct __ecereNameSpace__ecere__com__Instance * this, char * s, int max, unsigned int * hasNewLineChar)
1137 {
1138 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1139 int c = 0;
1140
1141 s[c] = '\0';
1142 if(!((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *))__extension__ ({
1143 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
1144
1145 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1146 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Eof])(this))
1147 {
1148 char ch = '\0';
1149
1150 while(c < max - 1)
1151 {
1152 if(!((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, char *  ch))__extension__ ({
1153 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
1154
1155 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1156 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Getc])(this, &ch))
1157 break;
1158 if(ch == '\n')
1159 break;
1160 if(ch != '\r')
1161 s[c++] = ch;
1162 }
1163 if(hasNewLineChar)
1164 *hasNewLineChar = (ch == '\n');
1165 }
1166 s[c] = '\0';
1167 return c;
1168 }
1169
1170 void __ecereMethod___ecereNameSpace__ecere__sys__File_Close(struct __ecereNameSpace__ecere__com__Instance * this)
1171 {
1172 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1173
1174 ((void (*)(struct __ecereNameSpace__ecere__com__Instance *))__extension__ ({
1175 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
1176
1177 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1178 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_CloseOutput])(this);
1179 ((void (*)(struct __ecereNameSpace__ecere__com__Instance *))__extension__ ({
1180 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
1181
1182 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1183 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_CloseInput])(this);
1184 }
1185
1186 void __ecereMethod___ecereNameSpace__ecere__sys__File_PrintLn(struct __ecereNameSpace__ecere__com__Instance * this, struct __ecereNameSpace__ecere__com__Class * class, const void * object, ...)
1187 {
1188 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1189 va_list args;
1190 char buffer[4096];
1191
1192 __builtin_va_start(args, object);
1193 __ecereNameSpace__ecere__com__PrintStdArgsToBuffer(buffer, sizeof (buffer), class, object, args);
1194 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char *  string))__extension__ ({
1195 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
1196
1197 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1198 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts])(this, buffer);
1199 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, char ch))__extension__ ({
1200 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
1201
1202 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1203 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Putc])(this, '\n');
1204 __builtin_va_end(args);
1205 }
1206
1207 void __ecereMethod___ecereNameSpace__ecere__sys__File_Print(struct __ecereNameSpace__ecere__com__Instance * this, struct __ecereNameSpace__ecere__com__Class * class, const void * object, ...)
1208 {
1209 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1210 va_list args;
1211 char buffer[4096];
1212
1213 __builtin_va_start(args, object);
1214 __ecereNameSpace__ecere__com__PrintStdArgsToBuffer(buffer, sizeof (buffer), class, object, args);
1215 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char *  string))__extension__ ({
1216 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
1217
1218 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1219 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts])(this, buffer);
1220 __builtin_va_end(args);
1221 }
1222
1223 struct __ecereNameSpace__ecere__com__Instance * __ecereNameSpace__ecere__sys__FileOpen(const char * fileName, int mode)
1224 {
1225 struct __ecereNameSpace__ecere__com__Instance * result = (((void *)0));
1226
1227 if(fileName)
1228 {
1229 if(strstr(fileName, "File://") == fileName)
1230 {
1231 result = (struct __ecereNameSpace__ecere__com__Instance *)(uintptr_t)strtoull(fileName + 7, (((void *)0)), 16);
1232 if(result)
1233 {
1234 if(((struct __ecereNameSpace__ecere__com__Instance *)(char *)result)->_class && __ecereNameSpace__ecere__com__eClass_IsDerived(((struct __ecereNameSpace__ecere__com__Instance *)(char *)result)->_class, __ecereClass___ecereNameSpace__ecere__sys__File))
1235 {
1236 if(!((struct __ecereNameSpace__ecere__com__Instance *)(char *)result)->_refCount)
1237 result->_refCount++;
1238 result->_refCount++;
1239 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
1240 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = result;
1241
1242 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1243 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(result, 0, 0);
1244 }
1245 else
1246 result = (((void *)0));
1247 }
1248 }
1249 else
1250 {
1251 struct __ecereNameSpace__ecere__com__Instance * file = __ecereNameSpace__ecere__com__eInstance_New(__ecereClass___ecereNameSpace__ecere__sys__File);
1252
1253 if(file)
1254 {
1255 FILE_FileOpen(fileName, mode, &((struct __ecereNameSpace__ecere__sys__File *)(((char *)file + __ecereClass___ecereNameSpace__ecere__sys__File->offset)))->input, &((struct __ecereNameSpace__ecere__sys__File *)(((char *)file + __ecereClass___ecereNameSpace__ecere__sys__File->offset)))->output);
1256 if(!__ecereProp___ecereNameSpace__ecere__sys__File_Get_input(file) && !__ecereProp___ecereNameSpace__ecere__sys__File_Get_output(file))
1257 ;
1258 else
1259 {
1260 __ecereNameSpace__ecere__sys__openCount++;
1261 result = file;
1262 }
1263 if(!result)
1264 {
1265 (__ecereNameSpace__ecere__com__eInstance_DecRef(file), file = 0);
1266 }
1267 }
1268 }
1269 }
1270 return result;
1271 }
1272
1273 void __ecereUnregisterModule_File(struct __ecereNameSpace__ecere__com__Instance * module)
1274 {
1275
1276 __ecerePropM___ecereNameSpace__ecere__sys__File_input = (void *)0;
1277 __ecerePropM___ecereNameSpace__ecere__sys__File_output = (void *)0;
1278 __ecerePropM___ecereNameSpace__ecere__sys__File_buffered = (void *)0;
1279 __ecerePropM___ecereNameSpace__ecere__sys__File_eof = (void *)0;
1280 }
1281
1282 int __ecereMethod___ecereNameSpace__ecere__sys__File_GetValue(struct __ecereNameSpace__ecere__com__Instance * this)
1283 {
1284 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1285 char string[32];
1286
1287 __ecereMethod___ecereNameSpace__ecere__sys__File_GetString(this, string, sizeof (string));
1288 return atoi(string);
1289 }
1290
1291 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_GetHexValue(struct __ecereNameSpace__ecere__com__Instance * this)
1292 {
1293 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1294 char string[32];
1295
1296 __ecereMethod___ecereNameSpace__ecere__sys__File_GetString(this, string, sizeof (string));
1297 return strtoul(string, (((void *)0)), 16);
1298 }
1299
1300 float __ecereMethod___ecereNameSpace__ecere__sys__File_GetFloat(struct __ecereNameSpace__ecere__com__Instance * this)
1301 {
1302 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1303 char string[32];
1304
1305 __ecereMethod___ecereNameSpace__ecere__sys__File_GetString(this, string, sizeof (string));
1306 return (float)__ecereNameSpace__ecere__sys__FloatFromString(string);
1307 }
1308
1309 double __ecereMethod___ecereNameSpace__ecere__sys__File_GetDouble(struct __ecereNameSpace__ecere__com__Instance * this)
1310 {
1311 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1312 char string[32];
1313
1314 __ecereMethod___ecereNameSpace__ecere__sys__File_GetString(this, string, sizeof (string));
1315 return __ecereNameSpace__ecere__sys__FloatFromString(string);
1316 }
1317
1318 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_OnGetDataFromString(struct __ecereNameSpace__ecere__com__Class * class, struct __ecereNameSpace__ecere__com__Instance ** this, const char * string)
1319 {
1320 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1321
1322 if(!string[0])
1323 {
1324 (*this) = (((void *)0));
1325 return 1;
1326 }
1327 else
1328 {
1329 struct __ecereNameSpace__ecere__com__Instance * f = __ecereNameSpace__ecere__sys__FileOpen(string, 1);
1330
1331 if(f)
1332 {
1333 (*this) = __ecereNameSpace__ecere__com__eInstance_New(__ecereClass___ecereNameSpace__ecere__sys__TempFile);
1334 while(!((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *))__extension__ ({
1335 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1336
1337 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1338 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Eof])(f))
1339 {
1340 unsigned char buffer[4096];
1341 unsigned int read = ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void *  buffer, unsigned int size, unsigned int count))__extension__ ({
1342 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1343
1344 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1345 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(f, buffer, 1, sizeof (buffer));
1346
1347 ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, const void *  buffer, unsigned int size, unsigned int count))__extension__ ({
1348 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = (*this);
1349
1350 __internal_ClassInst ? __internal_ClassInst->_vTbl : class->_vTbl;
1351 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Write])((*this), buffer, 1, read);
1352 }
1353 (__ecereNameSpace__ecere__com__eInstance_DecRef(f), f = 0);
1354 return 1;
1355 }
1356 }
1357 return 0;
1358 }
1359
1360 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__File_CopyTo(struct __ecereNameSpace__ecere__com__Instance * this, const char * outputFileName)
1361 {
1362 __attribute__((unused)) struct __ecereNameSpace__ecere__sys__File * __ecerePointer___ecereNameSpace__ecere__sys__File = (struct __ecereNameSpace__ecere__sys__File *)(this ? (((char *)this) + __ecereClass___ecereNameSpace__ecere__sys__File->offset) : 0);
1363 unsigned int result = 0;
1364 struct __ecereNameSpace__ecere__com__Instance * f = __ecereNameSpace__ecere__sys__FileOpen(outputFileName, 2);
1365
1366 if(f)
1367 {
1368 unsigned char buffer[65536];
1369
1370 result = 1;
1371 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
1372 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
1373
1374 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1375 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(this, 0, 0);
1376 while(!((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *))__extension__ ({
1377 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
1378
1379 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1380 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Eof])(this))
1381 {
1382 unsigned int count = ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void *  buffer, unsigned int size, unsigned int count))__extension__ ({
1383 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
1384
1385 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1386 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(this, buffer, 1, sizeof (buffer));
1387
1388 if(count && !((int (*)(struct __ecereNameSpace__ecere__com__Instance *, const void *  buffer, unsigned int size, unsigned int count))__extension__ ({
1389 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1390
1391 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1392 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Write])(f, buffer, 1, count))
1393 {
1394 result = 0;
1395 break;
1396 }
1397 }
1398 (__ecereNameSpace__ecere__com__eInstance_DecRef(f), f = 0);
1399 }
1400 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
1401 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
1402
1403 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1404 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(this, 0, 0);
1405 return result;
1406 }
1407
1408 void __ecereRegisterModule_File(struct __ecereNameSpace__ecere__com__Instance * module)
1409 {
1410 struct __ecereNameSpace__ecere__com__Class __attribute__((unused)) * class;
1411
1412 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(3, "ecere::sys::FileSize", "uint", 0, 0, (void *)0, (void *)0, module, 1, 1);
1413 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application && class)
1414 __ecereClass___ecereNameSpace__ecere__sys__FileSize = class;
1415 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "OnCompare", 0, __ecereMethod___ecereNameSpace__ecere__sys__FileSize_OnCompare, 1);
1416 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "OnGetString", 0, __ecereMethod___ecereNameSpace__ecere__sys__FileSize_OnGetString, 1);
1417 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "OnGetDataFromString", 0, __ecereMethod___ecereNameSpace__ecere__sys__FileSize_OnGetDataFromString, 1);
1418 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(3, "ecere::sys::FileSize64", "uint64", 0, 0, (void *)0, (void *)0, module, 1, 1);
1419 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application && class)
1420 __ecereClass___ecereNameSpace__ecere__sys__FileSize64 = class;
1421 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "OnCompare", 0, __ecereMethod___ecereNameSpace__ecere__sys__FileSize64_OnCompare, 1);
1422 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "OnGetString", 0, __ecereMethod___ecereNameSpace__ecere__sys__FileSize64_OnGetString, 1);
1423 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "OnGetDataFromString", 0, __ecereMethod___ecereNameSpace__ecere__sys__FileSize64_OnGetDataFromString, 1);
1424 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "ecere::sys::FileSystem", 0, 0, 0, (void *)0, (void *)0, module, 2, 1);
1425 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application && class)
1426 __ecereClass___ecereNameSpace__ecere__sys__FileSystem = class;
1427 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "Open", "ecere::sys::File ::Open(const char * archive, const char * name, ecere::sys::FileOpenMode mode)", 0, 2);
1428 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "Exists", "ecere::sys::FileAttribs ::Exists(const char * archive, const char * fileName)", 0, 2);
1429 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "GetSize", "bool ::GetSize(const char * archive, const char * fileName, ecere::sys::FileSize * size)", 0, 2);
1430 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "Stats", "bool ::Stats(const char * archive, const char * fileName, ecere::sys::FileStats stats)", 0, 2);
1431 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "FixCase", "void ::FixCase(const char * archive, char * fileName)", 0, 2);
1432 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "Find", "bool ::Find(FileDesc file, const char * archive, const char * name)", 0, 2);
1433 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "FindNext", "bool ::FindNext(FileDesc file)", 0, 2);
1434 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "CloseDir", "void ::CloseDir(FileDesc file)", 0, 2);
1435 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "OpenArchive", "Archive ::OpenArchive(const char * fileName, ArchiveOpenFlags create)", 0, 2);
1436 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "QuerySize", "bool ::QuerySize(const char * fileName, ecere::sys::FileSize * size)", 0, 2);
1437 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(4, "ecere::sys::FileOpenMode", 0, 0, 0, (void *)0, (void *)0, module, 1, 1);
1438 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application && class)
1439 __ecereClass___ecereNameSpace__ecere__sys__FileOpenMode = class;
1440 __ecereNameSpace__ecere__com__eEnum_AddFixedValue(class, "read", 1);
1441 __ecereNameSpace__ecere__com__eEnum_AddFixedValue(class, "write", 2);
1442 __ecereNameSpace__ecere__com__eEnum_AddFixedValue(class, "append", 3);
1443 __ecereNameSpace__ecere__com__eEnum_AddFixedValue(class, "readWrite", 4);
1444 __ecereNameSpace__ecere__com__eEnum_AddFixedValue(class, "writeRead", 5);
1445 __ecereNameSpace__ecere__com__eEnum_AddFixedValue(class, "appendRead", 6);
1446 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(4, "ecere::sys::FileSeekMode", 0, 0, 0, (void *)0, (void *)0, module, 1, 1);
1447 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application && class)
1448 __ecereClass___ecereNameSpace__ecere__sys__FileSeekMode = class;
1449 __ecereNameSpace__ecere__com__eEnum_AddFixedValue(class, "start", 0);
1450 __ecereNameSpace__ecere__com__eEnum_AddFixedValue(class, "current", 1);
1451 __ecereNameSpace__ecere__com__eEnum_AddFixedValue(class, "end", 2);
1452 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(4, "ecere::sys::FileLock", 0, 0, 0, (void *)0, (void *)0, module, 1, 1);
1453 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application && class)
1454 __ecereClass___ecereNameSpace__ecere__sys__FileLock = class;
1455 __ecereNameSpace__ecere__com__eEnum_AddFixedValue(class, "unlocked", 0);
1456 __ecereNameSpace__ecere__com__eEnum_AddFixedValue(class, "shared", 1);
1457 __ecereNameSpace__ecere__com__eEnum_AddFixedValue(class, "exclusive", 2);
1458 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "ecere::sys::File", "ecere::com::IOChannel", sizeof(struct __ecereNameSpace__ecere__sys__File), 0, (void *)0, (void *)__ecereDestructor___ecereNameSpace__ecere__sys__File, module, 1, 1);
1459 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application && class)
1460 __ecereClass___ecereNameSpace__ecere__sys__File = class;
1461 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "OnGetString", 0, __ecereMethod___ecereNameSpace__ecere__sys__File_OnGetString, 1);
1462 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "OnGetDataFromString", 0, __ecereMethod___ecereNameSpace__ecere__sys__File_OnGetDataFromString, 1);
1463 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "WriteData", 0, __ecereMethod___ecereNameSpace__ecere__sys__File_WriteData, 1);
1464 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "ReadData", 0, __ecereMethod___ecereNameSpace__ecere__sys__File_ReadData, 1);
1465 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "Seek", "bool Seek(int pos, ecere::sys::FileSeekMode mode)", __ecereMethod___ecereNameSpace__ecere__sys__File_Seek, 1);
1466 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "Tell", "uint Tell(void)", __ecereMethod___ecereNameSpace__ecere__sys__File_Tell, 1);
1467 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "Read", "int Read(void * buffer, unsigned int size, unsigned int count)", __ecereMethod___ecereNameSpace__ecere__sys__File_Read, 1);
1468 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "Write", "int Write(const void * buffer, unsigned int size, unsigned int count)", __ecereMethod___ecereNameSpace__ecere__sys__File_Write, 1);
1469 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "Getc", "bool Getc(char * ch)", __ecereMethod___ecereNameSpace__ecere__sys__File_Getc, 1);
1470 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "Putc", "bool Putc(char ch)", __ecereMethod___ecereNameSpace__ecere__sys__File_Putc, 1);
1471 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "Puts", "bool Puts(const char * string)", __ecereMethod___ecereNameSpace__ecere__sys__File_Puts, 1);
1472 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "Eof", "bool Eof(void)", __ecereMethod___ecereNameSpace__ecere__sys__File_Eof, 1);
1473 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "Truncate", "bool Truncate(ecere::sys::FileSize size)", __ecereMethod___ecereNameSpace__ecere__sys__File_Truncate, 1);
1474 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "GetSize", "uint GetSize(void)", __ecereMethod___ecereNameSpace__ecere__sys__File_GetSize, 1);
1475 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "CloseInput", "void CloseInput(void)", __ecereMethod___ecereNameSpace__ecere__sys__File_CloseInput, 1);
1476 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "CloseOutput", "void CloseOutput(void)", __ecereMethod___ecereNameSpace__ecere__sys__File_CloseOutput, 1);
1477 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "Lock", "bool Lock(ecere::sys::FileLock type, uint64 start, uint64 length, bool wait)", __ecereMethod___ecereNameSpace__ecere__sys__File_Lock, 1);
1478 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "Unlock", "bool Unlock(uint64 start, uint64 length, bool wait)", __ecereMethod___ecereNameSpace__ecere__sys__File_Unlock, 1);
1479 __ecereNameSpace__ecere__com__eClass_AddVirtualMethod(class, "Close", "void Close()", __ecereMethod___ecereNameSpace__ecere__sys__File_Close, 1);
1480 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "CopyTo", "bool CopyTo(const char * outputFileName)", __ecereMethod___ecereNameSpace__ecere__sys__File_CopyTo, 1);
1481 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Flush", "bool Flush(void)", __ecereMethod___ecereNameSpace__ecere__sys__File_Flush, 1);
1482 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "GetDouble", "double GetDouble(void)", __ecereMethod___ecereNameSpace__ecere__sys__File_GetDouble, 1);
1483 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "GetFloat", "float GetFloat(void)", __ecereMethod___ecereNameSpace__ecere__sys__File_GetFloat, 1);
1484 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "GetHexValue", "unsigned int GetHexValue(void)", __ecereMethod___ecereNameSpace__ecere__sys__File_GetHexValue, 1);
1485 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "GetLine", "bool GetLine(char * s, int max)", __ecereMethod___ecereNameSpace__ecere__sys__File_GetLine, 1);
1486 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "GetLineEx", "int GetLineEx(char * s, int max, bool * hasNewLineChar)", __ecereMethod___ecereNameSpace__ecere__sys__File_GetLineEx, 1);
1487 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "GetString", "bool GetString(char * string, int max)", __ecereMethod___ecereNameSpace__ecere__sys__File_GetString, 1);
1488 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "GetValue", "int GetValue(void)", __ecereMethod___ecereNameSpace__ecere__sys__File_GetValue, 1);
1489 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Print", "void Print(typed_object object, ...)", __ecereMethod___ecereNameSpace__ecere__sys__File_Print, 1);
1490 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "PrintLn", "void PrintLn(typed_object object, ...)", __ecereMethod___ecereNameSpace__ecere__sys__File_PrintLn, 1);
1491 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Printf", "int Printf(const char * format, ...)", __ecereMethod___ecereNameSpace__ecere__sys__File_Printf, 1);
1492 __ecerePropM___ecereNameSpace__ecere__sys__File_input = __ecereNameSpace__ecere__com__eClass_AddProperty(class, "input", "void *", __ecereProp___ecereNameSpace__ecere__sys__File_Set_input, __ecereProp___ecereNameSpace__ecere__sys__File_Get_input, 1);
1493 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application)
1494 __ecereProp___ecereNameSpace__ecere__sys__File_input = __ecerePropM___ecereNameSpace__ecere__sys__File_input, __ecerePropM___ecereNameSpace__ecere__sys__File_input = (void *)0;
1495 __ecerePropM___ecereNameSpace__ecere__sys__File_output = __ecereNameSpace__ecere__com__eClass_AddProperty(class, "output", "void *", __ecereProp___ecereNameSpace__ecere__sys__File_Set_output, __ecereProp___ecereNameSpace__ecere__sys__File_Get_output, 1);
1496 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application)
1497 __ecereProp___ecereNameSpace__ecere__sys__File_output = __ecerePropM___ecereNameSpace__ecere__sys__File_output, __ecerePropM___ecereNameSpace__ecere__sys__File_output = (void *)0;
1498 __ecerePropM___ecereNameSpace__ecere__sys__File_buffered = __ecereNameSpace__ecere__com__eClass_AddProperty(class, "buffered", "bool", __ecereProp___ecereNameSpace__ecere__sys__File_Set_buffered, 0, 1);
1499 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application)
1500 __ecereProp___ecereNameSpace__ecere__sys__File_buffered = __ecerePropM___ecereNameSpace__ecere__sys__File_buffered, __ecerePropM___ecereNameSpace__ecere__sys__File_buffered = (void *)0;
1501 __ecerePropM___ecereNameSpace__ecere__sys__File_eof = __ecereNameSpace__ecere__com__eClass_AddProperty(class, "eof", "bool", 0, __ecereProp___ecereNameSpace__ecere__sys__File_Get_eof, 1);
1502 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application)
1503 __ecereProp___ecereNameSpace__ecere__sys__File_eof = __ecerePropM___ecereNameSpace__ecere__sys__File_eof, __ecerePropM___ecereNameSpace__ecere__sys__File_eof = (void *)0;
1504 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "ecere::sys::ConsoleFile", "ecere::sys::File", 0, 0, (void *)__ecereConstructor___ecereNameSpace__ecere__sys__ConsoleFile, (void *)__ecereDestructor___ecereNameSpace__ecere__sys__ConsoleFile, module, 1, 1);
1505 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application && class)
1506 __ecereClass___ecereNameSpace__ecere__sys__ConsoleFile = class;
1507 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(2, "ecere::sys::FileAttribs", "bool", 0, 0, (void *)0, (void *)0, module, 1, 1);
1508 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application && class)
1509 __ecereClass___ecereNameSpace__ecere__sys__FileAttribs = class;
1510 __ecereNameSpace__ecere__com__eClass_AddBitMember(class, "isFile", "bool", 1, 0, 1);
1511 __ecereNameSpace__ecere__com__eClass_AddBitMember(class, "isArchive", "bool", 1, 1, 1);
1512 __ecereNameSpace__ecere__com__eClass_AddBitMember(class, "isHidden", "bool", 1, 2, 1);
1513 __ecereNameSpace__ecere__com__eClass_AddBitMember(class, "isReadOnly", "bool", 1, 3, 1);
1514 __ecereNameSpace__ecere__com__eClass_AddBitMember(class, "isSystem", "bool", 1, 4, 1);
1515 __ecereNameSpace__ecere__com__eClass_AddBitMember(class, "isTemporary", "bool", 1, 5, 1);
1516 __ecereNameSpace__ecere__com__eClass_AddBitMember(class, "isDirectory", "bool", 1, 6, 1);
1517 __ecereNameSpace__ecere__com__eClass_AddBitMember(class, "isDrive", "bool", 1, 7, 1);
1518 __ecereNameSpace__ecere__com__eClass_AddBitMember(class, "isCDROM", "bool", 1, 8, 1);
1519 __ecereNameSpace__ecere__com__eClass_AddBitMember(class, "isRemote", "bool", 1, 9, 1);
1520 __ecereNameSpace__ecere__com__eClass_AddBitMember(class, "isRemovable", "bool", 1, 10, 1);
1521 __ecereNameSpace__ecere__com__eClass_AddBitMember(class, "isServer", "bool", 1, 11, 1);
1522 __ecereNameSpace__ecere__com__eClass_AddBitMember(class, "isShare", "bool", 1, 12, 1);
1523 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(3, "ecere::sys::SecSince1970", "int64", 0, 0, (void *)0, (void *)0, module, 1, 1);
1524 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application && class)
1525 __ecereClass___ecereNameSpace__ecere__sys__SecSince1970 = class;
1526 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(1, "ecere::sys::FileStats", 0, sizeof(struct __ecereNameSpace__ecere__sys__FileStats), 0, (void *)0, (void *)0, module, 1, 1);
1527 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application && class)
1528 __ecereClass___ecereNameSpace__ecere__sys__FileStats = class;
1529 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "attribs", "ecere::sys::FileAttribs", 4, 4, 1);
1530 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "size", "ecere::sys::FileSize", 4, 4, 1);
1531 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "accessed", "ecere::sys::SecSince1970", 8, 8, 1);
1532 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "modified", "ecere::sys::SecSince1970", 8, 8, 1);
1533 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "created", "ecere::sys::SecSince1970", 8, 8, 1);
1534 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::sys::FileExists", "ecere::sys::FileAttribs ecere::sys::FileExists(const char * fileName)", __ecereNameSpace__ecere__sys__FileExists, module, 1);
1535 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::sys::FileOpen", "ecere::sys::File ecere::sys::FileOpen(const char * fileName, ecere::sys::FileOpenMode mode)", __ecereNameSpace__ecere__sys__FileOpen, module, 1);
1536 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::sys::FileFixCase", "void ecere::sys::FileFixCase(char * file)", __ecereNameSpace__ecere__sys__FileFixCase, module, 1);
1537 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::sys::FileGetSize", "bool ecere::sys::FileGetSize(const char * fileName, ecere::sys::FileSize * size)", __ecereNameSpace__ecere__sys__FileGetSize, module, 1);
1538 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::sys::FileGetStats", "bool ecere::sys::FileGetStats(const char * fileName, ecere::sys::FileStats stats)", __ecereNameSpace__ecere__sys__FileGetStats, module, 1);
1539 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::sys::CreateTemporaryFile", "ecere::sys::File ecere::sys::CreateTemporaryFile(char * tempFileName, const char * template)", __ecereNameSpace__ecere__sys__CreateTemporaryFile, module, 1);
1540 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::sys::CreateTemporaryDir", "void ecere::sys::CreateTemporaryDir(char * tempFileName, const char * template)", __ecereNameSpace__ecere__sys__CreateTemporaryDir, module, 1);
1541 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::sys::MakeSlashPath", "void ecere::sys::MakeSlashPath(char * p)", __ecereNameSpace__ecere__sys__MakeSlashPath, module, 1);
1542 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::sys::MakeSystemPath", "void ecere::sys::MakeSystemPath(char * p)", __ecereNameSpace__ecere__sys__MakeSystemPath, module, 1);
1543 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::sys::CopySystemPath", "char * ecere::sys::CopySystemPath(const char * p)", __ecereNameSpace__ecere__sys__CopySystemPath, module, 1);
1544 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::sys::CopyUnixPath", "char * ecere::sys::CopyUnixPath(const char * p)", __ecereNameSpace__ecere__sys__CopyUnixPath, module, 1);
1545 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::sys::GetSystemPathBuffer", "char * ecere::sys::GetSystemPathBuffer(char * d, const char * p)", __ecereNameSpace__ecere__sys__GetSystemPathBuffer, module, 1);
1546 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::sys::GetSlashPathBuffer", "char * ecere::sys::GetSlashPathBuffer(char * d, const char * p)", __ecereNameSpace__ecere__sys__GetSlashPathBuffer, module, 1);
1547 }
1548