7412eba6ff22ae0d4293f0679c6f6aaf7d567761
[sdk] / compiler / bootstrap / ecs / bootstrap / ecs.main.c
1 #if defined(__GNUC__)
2 typedef long long int64;
3 typedef unsigned long long uint64;
4 #ifndef _WIN32
5 #define __declspec(x)
6 #endif
7 #elif defined(__TINYC__)
8 #include <stdarg.h>
9 #define __builtin_va_list va_list
10 #define __builtin_va_start va_start
11 #define __builtin_va_end va_end
12 #ifdef _WIN32
13 #define strcasecmp stricmp
14 #define strncasecmp strnicmp
15 #define __declspec(x) __attribute__((x))
16 #else
17 #define __declspec(x)
18 #endif
19 typedef long long int64;
20 typedef unsigned long long uint64;
21 #else
22 typedef __int64 int64;
23 typedef unsigned __int64 uint64;
24 #endif
25 #ifdef __BIG_ENDIAN__
26 #define __ENDIAN_PAD(x) (8 - (x))
27 #else
28 #define __ENDIAN_PAD(x) 0
29 #endif
30 #include <stdint.h>
31
32 #if defined(_W64) || (defined(__WORDSIZE) && __WORDSIZE == 8) || defined(__x86_64__)
33 #define _64BIT 1
34 #else
35 #define _64BIT 0
36 #endif
37
38 #define arch_PointerSize                  sizeof(void *)
39 #define structSize_Instance               (_64BIT ? 24 : 12)
40 #define structSize_Module                 (_64BIT ? 560 : 300)
41
42 extern void *  __ecereNameSpace__ecere__com__eSystem_New(unsigned int size);
43
44 extern void *  __ecereNameSpace__ecere__com__eSystem_New0(unsigned int size);
45
46 extern void *  __ecereNameSpace__ecere__com__eSystem_Renew(void *  memory, unsigned int size);
47
48 extern void *  __ecereNameSpace__ecere__com__eSystem_Renew0(void *  memory, unsigned int size);
49
50 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BTNode;
51
52 struct __ecereNameSpace__ecere__sys__BTNode;
53
54 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BinaryTree;
55
56 struct __ecereNameSpace__ecere__sys__BinaryTree
57 {
58 struct __ecereNameSpace__ecere__sys__BTNode * root;
59 int count;
60 int (*  CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
61 void (*  FreeKey)(void *  key);
62 } __attribute__ ((gcc_struct));
63
64 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__OldList;
65
66 struct __ecereNameSpace__ecere__sys__OldList
67 {
68 void *  first;
69 void *  last;
70 int count;
71 unsigned int offset;
72 unsigned int circ;
73 } __attribute__ ((gcc_struct));
74
75 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Method;
76
77 struct __ecereNameSpace__ecere__com__Method
78 {
79 char *  name;
80 struct __ecereNameSpace__ecere__com__Method * parent;
81 struct __ecereNameSpace__ecere__com__Method * left;
82 struct __ecereNameSpace__ecere__com__Method * right;
83 int depth;
84 int (*  function)();
85 int vid;
86 int type;
87 struct __ecereNameSpace__ecere__com__Class * _class;
88 void *  symbol;
89 char *  dataTypeString;
90 struct Type * dataType;
91 int memberAccess;
92 } __attribute__ ((gcc_struct));
93
94 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Property;
95
96 struct __ecereNameSpace__ecere__com__Property
97 {
98 struct __ecereNameSpace__ecere__com__Property * prev;
99 struct __ecereNameSpace__ecere__com__Property * next;
100 char *  name;
101 unsigned int isProperty;
102 int memberAccess;
103 int id;
104 struct __ecereNameSpace__ecere__com__Class * _class;
105 char *  dataTypeString;
106 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
107 struct Type * dataType;
108 void (*  Set)(void * , int);
109 int (*  Get)(void * );
110 unsigned int (*  IsSet)(void * );
111 void *  data;
112 void *  symbol;
113 int vid;
114 unsigned int conversion;
115 unsigned int watcherOffset;
116 char *  category;
117 unsigned int compiled;
118 unsigned int selfWatchable;
119 unsigned int isWatchable;
120 } __attribute__ ((gcc_struct));
121
122 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_CodePosition;
123
124 struct CodePosition
125 {
126 int line;
127 int charPos;
128 int pos;
129 unsigned int included;
130 } __attribute__ ((gcc_struct));
131
132 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Location;
133
134 struct Location
135 {
136 struct CodePosition start;
137 struct CodePosition end;
138 } __attribute__ ((gcc_struct));
139
140 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Attrib;
141
142 struct Attrib;
143
144 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ExtDecl;
145
146 struct ExtDecl;
147
148 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassDefinition;
149
150 struct ClassDefinition;
151
152 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Context;
153
154 struct Context;
155
156 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Instantiation;
157
158 struct Instantiation;
159
160 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Declaration;
161
162 struct Declaration;
163
164 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Statement;
165
166 struct Statement;
167
168 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TypeName;
169
170 struct TypeName;
171
172 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Initializer;
173
174 struct Initializer;
175
176 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataValue;
177
178 struct __ecereNameSpace__ecere__com__DataValue
179 {
180 union
181 {
182 char c;
183 unsigned char uc;
184 short s;
185 unsigned short us;
186 int i;
187 unsigned int ui;
188 void *  p;
189 float f;
190 double d;
191 long long i64;
192 uint64 ui64;
193 } __attribute__ ((gcc_struct));
194 } __attribute__ ((gcc_struct));
195
196 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Expression;
197
198 struct Expression;
199
200 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateDatatype;
201
202 struct TemplateDatatype;
203
204 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateArgument;
205
206 struct TemplateArgument;
207
208 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateParameter;
209
210 struct TemplateParameter;
211
212 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Specifier;
213
214 struct Specifier;
215
216 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Identifier;
217
218 struct Identifier;
219
220 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Declarator;
221
222 struct Declarator;
223
224 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_FunctionDefinition;
225
226 struct FunctionDefinition;
227
228 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_DBTableDef;
229
230 struct DBTableDef;
231
232 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_External;
233
234 struct External;
235
236 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ModuleImport;
237
238 struct ModuleImport;
239
240 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassImport;
241
242 struct ClassImport;
243
244 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Symbol;
245
246 struct Symbol;
247
248 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
249
250 struct Type;
251
252 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Class;
253
254 struct __ecereNameSpace__ecere__com__Class
255 {
256 struct __ecereNameSpace__ecere__com__Class * prev;
257 struct __ecereNameSpace__ecere__com__Class * next;
258 char *  name;
259 int offset;
260 int structSize;
261 int (* *  _vTbl)();
262 int vTblSize;
263 int (*  Constructor)(struct __ecereNameSpace__ecere__com__Instance *);
264 void (*  Destructor)(struct __ecereNameSpace__ecere__com__Instance *);
265 int offsetClass;
266 int sizeClass;
267 struct __ecereNameSpace__ecere__com__Class * base;
268 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
269 struct __ecereNameSpace__ecere__sys__BinaryTree members;
270 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
271 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
272 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
273 struct __ecereNameSpace__ecere__sys__OldList derivatives;
274 int memberID;
275 int startMemberID;
276 int type;
277 struct __ecereNameSpace__ecere__com__Instance * module;
278 struct __ecereNameSpace__ecere__com__NameSpace *  nameSpace;
279 char *  dataTypeString;
280 struct Type * dataType;
281 int typeSize;
282 int defaultAlignment;
283 void (*  Initialize)();
284 int memberOffset;
285 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
286 char *  designerClass;
287 unsigned int noExpansion;
288 char *  defaultProperty;
289 unsigned int comRedefinition;
290 int count;
291 unsigned int isRemote;
292 unsigned int internalDecl;
293 void *  data;
294 unsigned int computeSize;
295 int structAlignment;
296 int destructionWatchOffset;
297 unsigned int fixed;
298 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
299 int inheritanceAccess;
300 char *  fullName;
301 void *  symbol;
302 struct __ecereNameSpace__ecere__sys__OldList conversions;
303 struct __ecereNameSpace__ecere__sys__OldList templateParams;
304 struct __ecereNameSpace__ecere__com__ClassTemplateArgument *  templateArgs;
305 struct __ecereNameSpace__ecere__com__Class * templateClass;
306 struct __ecereNameSpace__ecere__sys__OldList templatized;
307 int numParams;
308 } __attribute__ ((gcc_struct));
309
310 extern long long __ecereNameSpace__ecere__com__eClass_GetProperty(struct __ecereNameSpace__ecere__com__Class * _class, char *  name);
311
312 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Instance;
313
314 struct __ecereNameSpace__ecere__com__Instance
315 {
316 int (* *  _vTbl)();
317 struct __ecereNameSpace__ecere__com__Class * _class;
318 int _refCount;
319 } __attribute__ ((gcc_struct));
320
321 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataMember;
322
323 struct __ecereNameSpace__ecere__com__DataMember
324 {
325 struct __ecereNameSpace__ecere__com__DataMember * prev;
326 struct __ecereNameSpace__ecere__com__DataMember * next;
327 char *  name;
328 unsigned int isProperty;
329 int memberAccess;
330 int id;
331 struct __ecereNameSpace__ecere__com__Class * _class;
332 char *  dataTypeString;
333 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
334 struct Type * dataType;
335 int type;
336 int offset;
337 int memberID;
338 struct __ecereNameSpace__ecere__sys__OldList members;
339 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
340 int memberOffset;
341 int structAlignment;
342 } __attribute__ ((gcc_struct));
343
344 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__SerialBuffer;
345
346 struct __ecereNameSpace__ecere__com__SerialBuffer
347 {
348 unsigned char *  _buffer;
349 unsigned int count;
350 unsigned int _size;
351 unsigned int pos;
352 } __attribute__ ((gcc_struct));
353
354 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__ClassTemplateArgument;
355
356 struct __ecereNameSpace__ecere__com__ClassTemplateArgument
357 {
358 union
359 {
360 struct
361 {
362 char *  dataTypeString;
363 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
364 } __attribute__ ((gcc_struct));
365 struct __ecereNameSpace__ecere__com__DataValue expression;
366 struct
367 {
368 char *  memberString;
369 union
370 {
371 struct __ecereNameSpace__ecere__com__DataMember * member;
372 struct __ecereNameSpace__ecere__com__Property * prop;
373 struct __ecereNameSpace__ecere__com__Method * method;
374 } __attribute__ ((gcc_struct));
375 } __attribute__ ((gcc_struct));
376 } __attribute__ ((gcc_struct));
377 } __attribute__ ((gcc_struct));
378
379 static struct __ecereNameSpace__ecere__com__Instance * __currentModule;
380
381 struct __ecereNameSpace__ecere__com__Instance * __thisModule;
382
383 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Application;
384
385 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Instance;
386
387 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Module;
388
389 unsigned int __ecereDll_Load_ec(struct __ecereNameSpace__ecere__com__Instance * module);
390
391 unsigned int __ecereDll_Unload_ec(struct __ecereNameSpace__ecere__com__Instance * module);
392
393 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Attrib;
394
395 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassDefinition;
396
397 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassImport;
398
399 struct __ecereNameSpace__ecere__com__Class * __ecereClass_CodePosition;
400
401 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Context;
402
403 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ContextStringPair;
404
405 struct __ecereNameSpace__ecere__com__Class * __ecereClass_DBTableDef;
406
407 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Declaration;
408
409 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Declarator;
410
411 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Definition;
412
413 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Expression;
414
415 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ExtDecl;
416
417 struct __ecereNameSpace__ecere__com__Class * __ecereClass_External;
418
419 struct __ecereNameSpace__ecere__com__Class * __ecereClass_FunctionDefinition;
420
421 struct __ecereNameSpace__ecere__com__Class * __ecereClass_FunctionImport;
422
423 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Identifier;
424
425 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ImportedModule;
426
427 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Initializer;
428
429 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Instantiation;
430
431 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Location;
432
433 struct __ecereNameSpace__ecere__com__Class * __ecereClass_MethodImport;
434
435 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ModuleImport;
436
437 struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyImport;
438
439 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Specifier;
440
441 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Statement;
442
443 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Symbol;
444
445 struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateArgument;
446
447 struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateDatatype;
448
449 struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateParameter;
450
451 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
452
453 struct __ecereNameSpace__ecere__com__Class * __ecereClass_TypeName;
454
455 unsigned int __ecereDll_Load_ecere(struct __ecereNameSpace__ecere__com__Instance * module);
456
457 unsigned int __ecereDll_Unload_ecere(struct __ecereNameSpace__ecere__com__Instance * module);
458
459 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__BTNamedLink;
460
461 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Class;
462
463 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__ClassTemplateArgument;
464
465 int __ecereVMethodID___ecereNameSpace__ecere__com__Container_Add;
466
467 int __ecereVMethodID___ecereNameSpace__ecere__com__Container_Free;
468
469 int __ecereVMethodID___ecereNameSpace__ecere__com__Container_RemoveAll;
470
471 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__CustomAVLTree;
472
473 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataMember;
474
475 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataValue;
476
477 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__GlobalFunction;
478
479 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Iterator;
480
481 struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__com__Iterator_data;
482
483 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__IteratorPointer;
484
485 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__List_TPL_String_;
486
487 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Map_TPL_ContextStringPair__ecere__com__List_TPL_String___;
488
489 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__MapIterator;
490
491 struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__com__MapIterator_key;
492
493 struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__com__MapIterator_map;
494
495 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Method;
496
497 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__NameSpace;
498
499 struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__com__Platform_char__PTR_;
500
501 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Property;
502
503 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__SerialBuffer;
504
505 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__SubModule;
506
507 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BTNode;
508
509 struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__sys__BTNode_next;
510
511 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BinaryTree;
512
513 struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__sys__BinaryTree_first;
514
515 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Eof;
516
517 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts;
518
519 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Read;
520
521 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek;
522
523 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Write;
524
525 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__OldLink;
526
527 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__OldList;
528
529 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__TempFile;
530
531 void __ecereRegisterModule_ecs(struct __ecereNameSpace__ecere__com__Instance * module);
532
533 void __ecereUnregisterModule_ecs(struct __ecereNameSpace__ecere__com__Instance * module);
534
535 void __ecereCreateModuleInstances_ecs();
536
537 void __ecereDestroyModuleInstances_ecs();
538
539 extern struct __ecereNameSpace__ecere__com__Instance * __ecereNameSpace__ecere__com____ecere_COM_Initialize(unsigned int guiApp, int argc, char *  argv[]);
540
541 extern struct __ecereNameSpace__ecere__com__Instance * __ecereNameSpace__ecere__com__eModule_LoadStatic(struct __ecereNameSpace__ecere__com__Instance * fromModule, char *  name, int importAccess, unsigned int (* )(struct __ecereNameSpace__ecere__com__Instance * module), unsigned int (* )(struct __ecereNameSpace__ecere__com__Instance * module));
542
543 extern struct __ecereNameSpace__ecere__com__Class * __ecereNameSpace__ecere__com__eSystem_FindClass(struct __ecereNameSpace__ecere__com__Instance * module, char *  name);
544
545 extern struct __ecereNameSpace__ecere__com__Method * __ecereNameSpace__ecere__com__eClass_FindMethod(struct __ecereNameSpace__ecere__com__Class * _class, char *  name, struct __ecereNameSpace__ecere__com__Instance * module);
546
547 extern struct __ecereNameSpace__ecere__com__Property * __ecereNameSpace__ecere__com__eClass_FindProperty(struct __ecereNameSpace__ecere__com__Class * _class, char *  name, struct __ecereNameSpace__ecere__com__Instance * module);
548
549 extern void __ecereNameSpace__ecere__LoadTranslatedStrings(struct __ecereNameSpace__ecere__com__Instance * module, char *  name);
550
551 extern void __ecereNameSpace__ecere__com__eInstance_Evolve(struct __ecereNameSpace__ecere__com__Instance **  instancePtr, struct __ecereNameSpace__ecere__com__Class * _class);
552
553 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__NameSpace;
554
555 struct __ecereNameSpace__ecere__com__NameSpace
556 {
557 char *  name;
558 struct __ecereNameSpace__ecere__com__NameSpace *  btParent;
559 struct __ecereNameSpace__ecere__com__NameSpace *  left;
560 struct __ecereNameSpace__ecere__com__NameSpace *  right;
561 int depth;
562 struct __ecereNameSpace__ecere__com__NameSpace *  parent;
563 struct __ecereNameSpace__ecere__sys__BinaryTree nameSpaces;
564 struct __ecereNameSpace__ecere__sys__BinaryTree classes;
565 struct __ecereNameSpace__ecere__sys__BinaryTree defines;
566 struct __ecereNameSpace__ecere__sys__BinaryTree functions;
567 } __attribute__ ((gcc_struct));
568
569 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Module;
570
571 struct __ecereNameSpace__ecere__com__Module
572 {
573 struct __ecereNameSpace__ecere__com__Instance * application;
574 struct __ecereNameSpace__ecere__sys__OldList classes;
575 struct __ecereNameSpace__ecere__sys__OldList defines;
576 struct __ecereNameSpace__ecere__sys__OldList functions;
577 struct __ecereNameSpace__ecere__sys__OldList modules;
578 struct __ecereNameSpace__ecere__com__Instance * prev;
579 struct __ecereNameSpace__ecere__com__Instance * next;
580 char *  name;
581 void *  library;
582 void *  Unload;
583 int importType;
584 int origImportType;
585 struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace;
586 struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
587 } __attribute__ ((gcc_struct));
588
589 extern void __ecereNameSpace__ecere__UnloadTranslatedStrings(struct __ecereNameSpace__ecere__com__Instance * module);
590
591 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Application;
592
593 struct __ecereNameSpace__ecere__com__Application
594 {
595 int argc;
596 char * *  argv;
597 int exitCode;
598 unsigned int isGUIApp;
599 struct __ecereNameSpace__ecere__sys__OldList allModules;
600 char *  parsedCommand;
601 struct __ecereNameSpace__ecere__com__NameSpace systemNameSpace;
602 } __attribute__ ((gcc_struct));
603
604 extern void __ecereNameSpace__ecere__com__eInstance_DecRef(struct __ecereNameSpace__ecere__com__Instance * instance);
605
606 int main(int _argc, char * _argv[])
607 {
608 int exitCode;
609 struct __ecereNameSpace__ecere__com__Instance * module;
610 struct __ecereNameSpace__ecere__com__Class * _class;
611 struct __ecereNameSpace__ecere__com__Method * method;
612 struct __ecereNameSpace__ecere__com__Property * _property;
613
614 __thisModule = __currentModule = module = __ecereNameSpace__ecere__com____ecere_COM_Initialize((unsigned int)1, _argc, (void *)_argv);
615 __ecereNameSpace__ecere__com__eModule_LoadStatic(module, "ec", 2, __ecereDll_Load_ec, __ecereDll_Unload_ec);
616 __ecereNameSpace__ecere__com__eModule_LoadStatic(module, "ecere", 2, __ecereDll_Load_ecere, __ecereDll_Unload_ecere);
617 __ecereRegisterModule_ecs(module);
618 __ecereClass___ecereNameSpace__ecere__com__Application = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Application");
619 __ecereClass___ecereNameSpace__ecere__com__Instance = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Instance");
620 __ecereClass___ecereNameSpace__ecere__com__Module = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Module");
621 __ecereClass_Attrib = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Attrib");
622 __ecereClass_ClassDefinition = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ClassDefinition");
623 __ecereClass_ClassImport = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ClassImport");
624 __ecereClass_CodePosition = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "CodePosition");
625 __ecereClass_Context = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Context");
626 __ecereClass_ContextStringPair = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ContextStringPair");
627 __ecereClass_DBTableDef = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "DBTableDef");
628 __ecereClass_Declaration = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Declaration");
629 __ecereClass_Declarator = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Declarator");
630 __ecereClass_Definition = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Definition");
631 __ecereClass_Expression = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Expression");
632 __ecereClass_ExtDecl = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ExtDecl");
633 __ecereClass_External = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "External");
634 __ecereClass_FunctionDefinition = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "FunctionDefinition");
635 __ecereClass_FunctionImport = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "FunctionImport");
636 __ecereClass_Identifier = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Identifier");
637 __ecereClass_ImportedModule = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ImportedModule");
638 __ecereClass_Initializer = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Initializer");
639 __ecereClass_Instantiation = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Instantiation");
640 __ecereClass_Location = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Location");
641 __ecereClass_MethodImport = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "MethodImport");
642 __ecereClass_ModuleImport = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ModuleImport");
643 __ecereClass_PropertyImport = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "PropertyImport");
644 __ecereClass_Specifier = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Specifier");
645 __ecereClass_Statement = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Statement");
646 __ecereClass_Symbol = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Symbol");
647 __ecereClass_TemplateArgument = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "TemplateArgument");
648 __ecereClass_TemplateDatatype = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "TemplateDatatype");
649 __ecereClass_TemplateParameter = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "TemplateParameter");
650 __ecereClass_Type = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Type");
651 __ecereClass_TypeName = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "TypeName");
652 __ecereClass___ecereNameSpace__ecere__com__BTNamedLink = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::BTNamedLink");
653 __ecereClass___ecereNameSpace__ecere__com__Class = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Class");
654 __ecereClass___ecereNameSpace__ecere__com__ClassTemplateArgument = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::ClassTemplateArgument");
655 _class = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Container");
656 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Add", module);
657 if(method)
658 __ecereVMethodID___ecereNameSpace__ecere__com__Container_Add = method->vid;
659 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Free", module);
660 if(method)
661 __ecereVMethodID___ecereNameSpace__ecere__com__Container_Free = method->vid;
662 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "RemoveAll", module);
663 if(method)
664 __ecereVMethodID___ecereNameSpace__ecere__com__Container_RemoveAll = method->vid;
665 __ecereClass___ecereNameSpace__ecere__com__CustomAVLTree = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::CustomAVLTree");
666 __ecereClass___ecereNameSpace__ecere__com__DataMember = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::DataMember");
667 __ecereClass___ecereNameSpace__ecere__com__DataValue = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::DataValue");
668 __ecereClass___ecereNameSpace__ecere__com__GlobalFunction = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::GlobalFunction");
669 __ecereClass___ecereNameSpace__ecere__com__Iterator = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Iterator");
670 __ecereProp___ecereNameSpace__ecere__com__Iterator_data = _property = __ecereNameSpace__ecere__com__eClass_FindProperty(__ecereClass___ecereNameSpace__ecere__com__Iterator, "data", module);
671 __ecereClass___ecereNameSpace__ecere__com__IteratorPointer = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::IteratorPointer");
672 __ecereClass___ecereNameSpace__ecere__com__List_TPL_String_ = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::List<String>");
673 __ecereClass___ecereNameSpace__ecere__com__Map_TPL_ContextStringPair__ecere__com__List_TPL_String___ = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Map<ContextStringPair, ecere::com::List<String> >");
674 __ecereClass___ecereNameSpace__ecere__com__MapIterator = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::MapIterator");
675 __ecereProp___ecereNameSpace__ecere__com__MapIterator_key = _property = __ecereNameSpace__ecere__com__eClass_FindProperty(__ecereClass___ecereNameSpace__ecere__com__MapIterator, "key", module);
676 __ecereProp___ecereNameSpace__ecere__com__MapIterator_map = _property = __ecereNameSpace__ecere__com__eClass_FindProperty(__ecereClass___ecereNameSpace__ecere__com__MapIterator, "map", module);
677 __ecereClass___ecereNameSpace__ecere__com__Method = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Method");
678 __ecereClass___ecereNameSpace__ecere__com__NameSpace = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::NameSpace");
679 _class = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Platform");
680 __ecereProp___ecereNameSpace__ecere__com__Platform_char__PTR_ = _property = __ecereNameSpace__ecere__com__eClass_FindProperty(_class, "char *", module);
681 __ecereClass___ecereNameSpace__ecere__com__Property = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Property");
682 __ecereClass___ecereNameSpace__ecere__com__SerialBuffer = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::SerialBuffer");
683 __ecereClass___ecereNameSpace__ecere__com__SubModule = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::SubModule");
684 __ecereClass___ecereNameSpace__ecere__sys__BTNode = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::BTNode");
685 __ecereProp___ecereNameSpace__ecere__sys__BTNode_next = _property = __ecereNameSpace__ecere__com__eClass_FindProperty(__ecereClass___ecereNameSpace__ecere__sys__BTNode, "next", module);
686 __ecereClass___ecereNameSpace__ecere__sys__BinaryTree = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::BinaryTree");
687 __ecereProp___ecereNameSpace__ecere__sys__BinaryTree_first = _property = __ecereNameSpace__ecere__com__eClass_FindProperty(__ecereClass___ecereNameSpace__ecere__sys__BinaryTree, "first", module);
688 _class = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::File");
689 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Eof", module);
690 if(method)
691 __ecereVMethodID___ecereNameSpace__ecere__sys__File_Eof = method->vid;
692 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Puts", module);
693 if(method)
694 __ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts = method->vid;
695 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Read", module);
696 if(method)
697 __ecereVMethodID___ecereNameSpace__ecere__sys__File_Read = method->vid;
698 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Seek", module);
699 if(method)
700 __ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek = method->vid;
701 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Write", module);
702 if(method)
703 __ecereVMethodID___ecereNameSpace__ecere__sys__File_Write = method->vid;
704 __ecereClass___ecereNameSpace__ecere__sys__OldLink = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::OldLink");
705 __ecereClass___ecereNameSpace__ecere__sys__OldList = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::OldList");
706 __ecereClass___ecereNameSpace__ecere__sys__TempFile = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::TempFile");
707 __ecereNameSpace__ecere__LoadTranslatedStrings(module, "ecs");
708 _class = __ecereNameSpace__ecere__com__eSystem_FindClass(__currentModule, "SymbolgenApp");
709 __ecereNameSpace__ecere__com__eInstance_Evolve((struct __ecereNameSpace__ecere__com__Instance **)&__currentModule, _class);
710 __thisModule = __currentModule;
711 __ecereCreateModuleInstances_ecs();
712 ((void (*)(void *))(void *)((struct __ecereNameSpace__ecere__com__Instance *)(char *)__currentModule)->_vTbl[12])(__currentModule);
713 __ecereDestroyModuleInstances_ecs();
714 __ecereNameSpace__ecere__UnloadTranslatedStrings(__currentModule);
715 _class = __ecereNameSpace__ecere__com__eSystem_FindClass(__currentModule, "ecere::com::Application");
716 exitCode = ((struct __ecereNameSpace__ecere__com__Application *)(((char *)((struct __ecereNameSpace__ecere__com__Instance *)__currentModule) + structSize_Module)))->exitCode;
717 (__ecereNameSpace__ecere__com__eInstance_DecRef(__currentModule), __currentModule = 0);
718 return exitCode;
719 }
720
721 void __ecereRegisterModule_ecs_main(struct __ecereNameSpace__ecere__com__Instance * module)
722 {
723 struct __ecereNameSpace__ecere__com__Class * class;
724
725 }
726
727 void __ecereUnregisterModule_ecs_main(struct __ecereNameSpace__ecere__com__Instance * module)
728 {
729
730 }
731