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