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