compiler/ecere/i18n: Added i18n context support through $"context"."string" syntax...
[sdk] / compiler / bootstrap / libec / bootstrap / ec.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 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BTNode;
26
27 struct __ecereNameSpace__ecere__sys__BTNode;
28
29 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BinaryTree;
30
31 struct __ecereNameSpace__ecere__sys__BinaryTree
32 {
33 struct __ecereNameSpace__ecere__sys__BTNode * root;
34 int count;
35 int (*  CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, unsigned int a, unsigned int b);
36 void (*  FreeKey)(void *  key);
37 };
38
39 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__OldList;
40
41 struct __ecereNameSpace__ecere__sys__OldList
42 {
43 void *  first;
44 void *  last;
45 int count;
46 unsigned int offset;
47 unsigned int circ;
48 };
49
50 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Method;
51
52 struct __ecereNameSpace__ecere__com__Method
53 {
54 char *  name;
55 struct __ecereNameSpace__ecere__com__Method * parent;
56 struct __ecereNameSpace__ecere__com__Method * left;
57 struct __ecereNameSpace__ecere__com__Method * right;
58 int depth;
59 int (*  function)();
60 int vid;
61 int type;
62 struct __ecereNameSpace__ecere__com__Class * _class;
63 void *  symbol;
64 char *  dataTypeString;
65 struct Type * dataType;
66 int memberAccess;
67 };
68
69 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Property;
70
71 struct __ecereNameSpace__ecere__com__Property
72 {
73 struct __ecereNameSpace__ecere__com__Property * prev;
74 struct __ecereNameSpace__ecere__com__Property * next;
75 char *  name;
76 unsigned int isProperty;
77 int memberAccess;
78 int id;
79 struct __ecereNameSpace__ecere__com__Class * _class;
80 char *  dataTypeString;
81 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
82 struct Type * dataType;
83 void (*  Set)();
84 int (*  Get)();
85 unsigned int (*  IsSet)();
86 void *  data;
87 void *  symbol;
88 int vid;
89 unsigned int conversion;
90 unsigned int watcherOffset;
91 char *  category;
92 unsigned int compiled;
93 unsigned int selfWatchable;
94 unsigned int isWatchable;
95 };
96
97 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_CodePosition;
98
99 struct CodePosition
100 {
101 int line;
102 int charPos;
103 int pos;
104 unsigned int included;
105 };
106
107 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Location;
108
109 struct Location
110 {
111 struct CodePosition start;
112 struct CodePosition end;
113 };
114
115 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassDefinition;
116
117 struct ClassDefinition;
118
119 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Context;
120
121 struct Context;
122
123 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Instantiation;
124
125 struct Instantiation;
126
127 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Declaration;
128
129 struct Declaration;
130
131 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Statement;
132
133 struct Statement;
134
135 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TypeName;
136
137 struct TypeName;
138
139 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Initializer;
140
141 struct Initializer;
142
143 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataValue;
144
145 struct __ecereNameSpace__ecere__com__DataValue
146 {
147 union
148 {
149 char c;
150 unsigned char uc;
151 short s;
152 unsigned short us;
153 int i;
154 unsigned int ui;
155 void *  p;
156 float f;
157 double d;
158 long long i64;
159 uint64 ui64;
160 };
161 };
162
163 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Expression;
164
165 struct Expression;
166
167 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateDatatype;
168
169 struct TemplateDatatype;
170
171 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateArgument;
172
173 struct TemplateArgument;
174
175 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateParameter;
176
177 struct TemplateParameter;
178
179 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Specifier;
180
181 struct Specifier;
182
183 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Identifier;
184
185 struct Identifier;
186
187 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Pointer;
188
189 struct Pointer;
190
191 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Declarator;
192
193 struct Declarator;
194
195 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_FunctionDefinition;
196
197 struct FunctionDefinition;
198
199 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_DBTableDef;
200
201 struct DBTableDef;
202
203 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_External;
204
205 struct External;
206
207 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ModuleImport;
208
209 struct ModuleImport;
210
211 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassImport;
212
213 struct ClassImport;
214
215 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Symbol;
216
217 struct Symbol;
218
219 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
220
221 struct Type;
222
223 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Class;
224
225 struct __ecereNameSpace__ecere__com__Class
226 {
227 struct __ecereNameSpace__ecere__com__Class * prev;
228 struct __ecereNameSpace__ecere__com__Class * next;
229 char *  name;
230 int offset;
231 int structSize;
232 int (* *  _vTbl)();
233 int vTblSize;
234 int (*  Constructor)(struct __ecereNameSpace__ecere__com__Instance *);
235 void (*  Destructor)(struct __ecereNameSpace__ecere__com__Instance *);
236 int offsetClass;
237 int sizeClass;
238 struct __ecereNameSpace__ecere__com__Class * base;
239 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
240 struct __ecereNameSpace__ecere__sys__BinaryTree members;
241 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
242 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
243 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
244 struct __ecereNameSpace__ecere__sys__OldList derivatives;
245 int memberID;
246 int startMemberID;
247 int type;
248 struct __ecereNameSpace__ecere__com__Instance * module;
249 struct __ecereNameSpace__ecere__com__NameSpace *  nameSpace;
250 char *  dataTypeString;
251 struct Type * dataType;
252 int typeSize;
253 int defaultAlignment;
254 void (*  Initialize)();
255 int memberOffset;
256 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
257 char *  designerClass;
258 unsigned int noExpansion;
259 char *  defaultProperty;
260 unsigned int comRedefinition;
261 int count;
262 unsigned int isRemote;
263 unsigned int internalDecl;
264 void *  data;
265 unsigned int computeSize;
266 int structAlignment;
267 int destructionWatchOffset;
268 unsigned int fixed;
269 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
270 int inheritanceAccess;
271 char *  fullName;
272 void *  symbol;
273 struct __ecereNameSpace__ecere__sys__OldList conversions;
274 struct __ecereNameSpace__ecere__sys__OldList templateParams;
275 struct __ecereNameSpace__ecere__com__ClassTemplateArgument *  templateArgs;
276 struct __ecereNameSpace__ecere__com__Class * templateClass;
277 struct __ecereNameSpace__ecere__sys__OldList templatized;
278 int numParams;
279 };
280
281 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Instance;
282
283 struct __ecereNameSpace__ecere__com__Instance
284 {
285 int (* *  _vTbl)();
286 struct __ecereNameSpace__ecere__com__Class * _class;
287 int _refCount;
288 };
289
290 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataMember;
291
292 struct __ecereNameSpace__ecere__com__DataMember
293 {
294 struct __ecereNameSpace__ecere__com__DataMember * prev;
295 struct __ecereNameSpace__ecere__com__DataMember * next;
296 char *  name;
297 unsigned int isProperty;
298 int memberAccess;
299 int id;
300 struct __ecereNameSpace__ecere__com__Class * _class;
301 char *  dataTypeString;
302 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
303 struct Type * dataType;
304 int type;
305 int offset;
306 int memberID;
307 struct __ecereNameSpace__ecere__sys__OldList members;
308 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
309 int memberOffset;
310 int structAlignment;
311 };
312
313 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__SerialBuffer;
314
315 struct __ecereNameSpace__ecere__com__SerialBuffer
316 {
317 unsigned char *  _buffer;
318 unsigned int count;
319 unsigned int _size;
320 unsigned int pos;
321 };
322
323 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__ClassTemplateArgument;
324
325 struct __ecereNameSpace__ecere__com__ClassTemplateArgument
326 {
327 union
328 {
329 struct
330 {
331 char *  dataTypeString;
332 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
333 };
334 struct __ecereNameSpace__ecere__com__DataValue expression;
335 struct
336 {
337 char *  memberString;
338 union
339 {
340 struct __ecereNameSpace__ecere__com__DataMember * member;
341 struct __ecereNameSpace__ecere__com__Property * prop;
342 struct __ecereNameSpace__ecere__com__Method * method;
343 };
344 };
345 };
346 };
347
348 static struct __ecereNameSpace__ecere__com__Instance * __currentModule;
349
350 struct __ecereNameSpace__ecere__com__Class * __ecereClass_AsmField;
351
352 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassDef;
353
354 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassDefinition;
355
356 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassFunction;
357
358 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassImport;
359
360 struct __ecereNameSpace__ecere__com__Class * __ecereClass_CodePosition;
361
362 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Context;
363
364 struct __ecereNameSpace__ecere__com__Class * __ecereClass_DBIndexItem;
365
366 struct __ecereNameSpace__ecere__com__Class * __ecereClass_DBTableDef;
367
368 struct __ecereNameSpace__ecere__com__Class * __ecereClass_DBTableEntry;
369
370 struct __ecereNameSpace__ecere__com__Class * __ecereClass_DataRedefinition;
371
372 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Declaration;
373
374 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Declarator;
375
376 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Definition;
377
378 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Enumerator;
379
380 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Expression;
381
382 struct __ecereNameSpace__ecere__com__Class * __ecereClass_External;
383
384 struct __ecereNameSpace__ecere__com__Class * __ecereClass_FunctionDefinition;
385
386 struct __ecereNameSpace__ecere__com__Class * __ecereClass_FunctionImport;
387
388 struct __ecereNameSpace__ecere__com__Class * __ecereClass_GlobalData;
389
390 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Identifier;
391
392 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ImportedModule;
393
394 struct __ecereNameSpace__ecere__com__Class * __ecereClass_InitDeclarator;
395
396 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Initializer;
397
398 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Instantiation;
399
400 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Location;
401
402 struct __ecereNameSpace__ecere__com__Class * __ecereClass_MemberInit;
403
404 struct __ecereNameSpace__ecere__com__Class * __ecereClass_MembersInit;
405
406 struct __ecereNameSpace__ecere__com__Class * __ecereClass_MethodImport;
407
408 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ModuleImport;
409
410 struct __ecereNameSpace__ecere__com__Class * __ecereClass_OpTable;
411
412 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Operand;
413
414 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Pointer;
415
416 struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyDef;
417
418 struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyImport;
419
420 struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyWatch;
421
422 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Specifier;
423
424 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Statement;
425
426 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Symbol;
427
428 struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateArgument;
429
430 struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateDatatype;
431
432 struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateParameter;
433
434 struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplatedType;
435
436 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
437
438 struct __ecereNameSpace__ecere__com__Class * __ecereClass_TypeName;
439
440 int __ecereVMethodID_class_OnGetString;
441
442 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Application;
443
444 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Instance;
445
446 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Module;
447
448 struct __ecereNameSpace__ecere__com__Class * __ecereClass_int;
449
450 unsigned int __ecereDll_Load_ecere(struct __ecereNameSpace__ecere__com__Instance * module);
451
452 unsigned int __ecereDll_Unload_ecere(struct __ecereNameSpace__ecere__com__Instance * module);
453
454 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__BTNamedLink;
455
456 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__BitMember;
457
458 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Class;
459
460 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__ClassProperty;
461
462 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__ClassTemplateArgument;
463
464 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__ClassTemplateParameter;
465
466 int __ecereVMethodID___ecereNameSpace__ecere__com__Container_Add;
467
468 int __ecereVMethodID___ecereNameSpace__ecere__com__Container_Free;
469
470 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__CustomAVLTree;
471
472 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataMember;
473
474 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataValue;
475
476 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DefinedExpression;
477
478 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__EnumClassData;
479
480 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__GlobalFunction;
481
482 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Iterator;
483
484 struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__com__Iterator_data;
485
486 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__IteratorPointer;
487
488 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__List_TPL_Location_;
489
490 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Map_TPL_ContextStringPair__ecere__com__List_TPL_Location___;
491
492 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__MapIterator;
493
494 struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__com__MapIterator_key;
495
496 struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__com__MapIterator_map;
497
498 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Method;
499
500 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__NameSpace;
501
502 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Property;
503
504 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__SerialBuffer;
505
506 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__SubModule;
507
508 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__TemplateMemberType;
509
510 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__gui__controls__BufferLocation;
511
512 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__gui__controls__EditLine;
513
514 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BTNode;
515
516 struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__sys__BTNode_next;
517
518 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BinaryTree;
519
520 struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__sys__BinaryTree_first;
521
522 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Eof;
523
524 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_GetSize;
525
526 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Putc;
527
528 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts;
529
530 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Read;
531
532 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek;
533
534 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Write;
535
536 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__Item;
537
538 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__NamedItem;
539
540 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__NamedLink;
541
542 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__OldLink;
543
544 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__OldList;
545
546 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__TempFile;
547
548 void __ecereRegisterModule_ast(struct __ecereNameSpace__ecere__com__Instance * module);
549
550 void __ecereUnregisterModule_ast(struct __ecereNameSpace__ecere__com__Instance * module);
551
552 void __ecereCreateModuleInstances_ast();
553
554 void __ecereDestroyModuleInstances_ast();
555
556 void __ecereRegisterModule_copy(struct __ecereNameSpace__ecere__com__Instance * module);
557
558 void __ecereUnregisterModule_copy(struct __ecereNameSpace__ecere__com__Instance * module);
559
560 void __ecereRegisterModule_dbpass(struct __ecereNameSpace__ecere__com__Instance * module);
561
562 void __ecereUnregisterModule_dbpass(struct __ecereNameSpace__ecere__com__Instance * module);
563
564 void __ecereRegisterModule_ecdefs(struct __ecereNameSpace__ecere__com__Instance * module);
565
566 void __ecereUnregisterModule_ecdefs(struct __ecereNameSpace__ecere__com__Instance * module);
567
568 void __ecereRegisterModule_expression(struct __ecereNameSpace__ecere__com__Instance * module);
569
570 void __ecereUnregisterModule_expression(struct __ecereNameSpace__ecere__com__Instance * module);
571
572 void __ecereRegisterModule_firstPass(struct __ecereNameSpace__ecere__com__Instance * module);
573
574 void __ecereUnregisterModule_firstPass(struct __ecereNameSpace__ecere__com__Instance * module);
575
576 void __ecereRegisterModule_freeAst(struct __ecereNameSpace__ecere__com__Instance * module);
577
578 void __ecereUnregisterModule_freeAst(struct __ecereNameSpace__ecere__com__Instance * module);
579
580 void __ecereRegisterModule_grammar(struct __ecereNameSpace__ecere__com__Instance * module);
581
582 void __ecereUnregisterModule_grammar(struct __ecereNameSpace__ecere__com__Instance * module);
583
584 void __ecereRegisterModule_lexer(struct __ecereNameSpace__ecere__com__Instance * module);
585
586 void __ecereUnregisterModule_lexer(struct __ecereNameSpace__ecere__com__Instance * module);
587
588 void __ecereRegisterModule_loadSymbols(struct __ecereNameSpace__ecere__com__Instance * module);
589
590 void __ecereUnregisterModule_loadSymbols(struct __ecereNameSpace__ecere__com__Instance * module);
591
592 void __ecereRegisterModule_output(struct __ecereNameSpace__ecere__com__Instance * module);
593
594 void __ecereUnregisterModule_output(struct __ecereNameSpace__ecere__com__Instance * module);
595
596 void __ecereRegisterModule_pass0(struct __ecereNameSpace__ecere__com__Instance * module);
597
598 void __ecereUnregisterModule_pass0(struct __ecereNameSpace__ecere__com__Instance * module);
599
600 void __ecereRegisterModule_pass1(struct __ecereNameSpace__ecere__com__Instance * module);
601
602 void __ecereUnregisterModule_pass1(struct __ecereNameSpace__ecere__com__Instance * module);
603
604 void __ecereRegisterModule_pass15(struct __ecereNameSpace__ecere__com__Instance * module);
605
606 void __ecereUnregisterModule_pass15(struct __ecereNameSpace__ecere__com__Instance * module);
607
608 void __ecereRegisterModule_pass16(struct __ecereNameSpace__ecere__com__Instance * module);
609
610 void __ecereUnregisterModule_pass16(struct __ecereNameSpace__ecere__com__Instance * module);
611
612 void __ecereRegisterModule_pass2(struct __ecereNameSpace__ecere__com__Instance * module);
613
614 void __ecereUnregisterModule_pass2(struct __ecereNameSpace__ecere__com__Instance * module);
615
616 void __ecereRegisterModule_pass3(struct __ecereNameSpace__ecere__com__Instance * module);
617
618 void __ecereUnregisterModule_pass3(struct __ecereNameSpace__ecere__com__Instance * module);
619
620 void __ecereRegisterModule_shortcuts(struct __ecereNameSpace__ecere__com__Instance * module);
621
622 void __ecereUnregisterModule_shortcuts(struct __ecereNameSpace__ecere__com__Instance * module);
623
624 void __ecereRegisterModule_type(struct __ecereNameSpace__ecere__com__Instance * module);
625
626 void __ecereUnregisterModule_type(struct __ecereNameSpace__ecere__com__Instance * module);
627
628 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));
629
630 extern struct __ecereNameSpace__ecere__com__Class * __ecereNameSpace__ecere__com__eSystem_FindClass(struct __ecereNameSpace__ecere__com__Instance * module, char *  name);
631
632 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);
633
634 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);
635
636 unsigned int __ecereDll_Load_ec(struct __ecereNameSpace__ecere__com__Instance * module)
637 {
638 struct __ecereNameSpace__ecere__com__Class * _class;
639 struct __ecereNameSpace__ecere__com__Method * method;
640 struct __ecereNameSpace__ecere__com__Property * _property;
641
642 if(!__currentModule)
643 {
644 __currentModule = module;
645 }
646 __ecereNameSpace__ecere__com__eModule_LoadStatic(module, "ecere", 1, __ecereDll_Load_ecere, __ecereDll_Unload_ecere);
647 __ecereRegisterModule_ast(module);
648 __ecereRegisterModule_copy(module);
649 __ecereRegisterModule_dbpass(module);
650 __ecereRegisterModule_ecdefs(module);
651 __ecereRegisterModule_expression(module);
652 __ecereRegisterModule_firstPass(module);
653 __ecereRegisterModule_freeAst(module);
654 __ecereRegisterModule_grammar(module);
655 __ecereRegisterModule_lexer(module);
656 __ecereRegisterModule_loadSymbols(module);
657 __ecereRegisterModule_output(module);
658 __ecereRegisterModule_pass0(module);
659 __ecereRegisterModule_pass1(module);
660 __ecereRegisterModule_pass15(module);
661 __ecereRegisterModule_pass16(module);
662 __ecereRegisterModule_pass2(module);
663 __ecereRegisterModule_pass3(module);
664 __ecereRegisterModule_shortcuts(module);
665 __ecereRegisterModule_type(module);
666 if(__currentModule == module)
667 {
668 __ecereClass_AsmField = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "AsmField");
669 __ecereClass_ClassDef = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ClassDef");
670 __ecereClass_ClassDefinition = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ClassDefinition");
671 __ecereClass_ClassFunction = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ClassFunction");
672 __ecereClass_ClassImport = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ClassImport");
673 __ecereClass_CodePosition = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "CodePosition");
674 __ecereClass_Context = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Context");
675 __ecereClass_DBIndexItem = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "DBIndexItem");
676 __ecereClass_DBTableDef = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "DBTableDef");
677 __ecereClass_DBTableEntry = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "DBTableEntry");
678 __ecereClass_DataRedefinition = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "DataRedefinition");
679 __ecereClass_Declaration = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Declaration");
680 __ecereClass_Declarator = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Declarator");
681 __ecereClass_Definition = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Definition");
682 __ecereClass_Enumerator = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Enumerator");
683 __ecereClass_Expression = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Expression");
684 __ecereClass_External = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "External");
685 __ecereClass_FunctionDefinition = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "FunctionDefinition");
686 __ecereClass_FunctionImport = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "FunctionImport");
687 __ecereClass_GlobalData = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "GlobalData");
688 __ecereClass_Identifier = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Identifier");
689 __ecereClass_ImportedModule = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ImportedModule");
690 __ecereClass_InitDeclarator = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "InitDeclarator");
691 __ecereClass_Initializer = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Initializer");
692 __ecereClass_Instantiation = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Instantiation");
693 __ecereClass_Location = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Location");
694 __ecereClass_MemberInit = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "MemberInit");
695 __ecereClass_MembersInit = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "MembersInit");
696 __ecereClass_MethodImport = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "MethodImport");
697 __ecereClass_ModuleImport = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ModuleImport");
698 __ecereClass_OpTable = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "OpTable");
699 __ecereClass_Operand = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Operand");
700 __ecereClass_Pointer = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Pointer");
701 __ecereClass_PropertyDef = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "PropertyDef");
702 __ecereClass_PropertyImport = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "PropertyImport");
703 __ecereClass_PropertyWatch = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "PropertyWatch");
704 __ecereClass_Specifier = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Specifier");
705 __ecereClass_Statement = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Statement");
706 __ecereClass_Symbol = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Symbol");
707 __ecereClass_TemplateArgument = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "TemplateArgument");
708 __ecereClass_TemplateDatatype = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "TemplateDatatype");
709 __ecereClass_TemplateParameter = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "TemplateParameter");
710 __ecereClass_TemplatedType = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "TemplatedType");
711 __ecereClass_Type = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Type");
712 __ecereClass_TypeName = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "TypeName");
713 _class = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "class");
714 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "OnGetString", module);
715 if(method)
716 __ecereVMethodID_class_OnGetString = method->vid;
717 __ecereClass___ecereNameSpace__ecere__com__Application = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Application");
718 __ecereClass___ecereNameSpace__ecere__com__Instance = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Instance");
719 __ecereClass___ecereNameSpace__ecere__com__Module = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Module");
720 __ecereClass_int = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "int");
721 __ecereClass___ecereNameSpace__ecere__com__BTNamedLink = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::BTNamedLink");
722 __ecereClass___ecereNameSpace__ecere__com__BitMember = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::BitMember");
723 __ecereClass___ecereNameSpace__ecere__com__Class = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Class");
724 __ecereClass___ecereNameSpace__ecere__com__ClassProperty = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::ClassProperty");
725 __ecereClass___ecereNameSpace__ecere__com__ClassTemplateArgument = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::ClassTemplateArgument");
726 __ecereClass___ecereNameSpace__ecere__com__ClassTemplateParameter = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::ClassTemplateParameter");
727 _class = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Container");
728 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Add", module);
729 if(method)
730 __ecereVMethodID___ecereNameSpace__ecere__com__Container_Add = method->vid;
731 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Free", module);
732 if(method)
733 __ecereVMethodID___ecereNameSpace__ecere__com__Container_Free = method->vid;
734 __ecereClass___ecereNameSpace__ecere__com__CustomAVLTree = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::CustomAVLTree");
735 __ecereClass___ecereNameSpace__ecere__com__DataMember = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::DataMember");
736 __ecereClass___ecereNameSpace__ecere__com__DataValue = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::DataValue");
737 __ecereClass___ecereNameSpace__ecere__com__DefinedExpression = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::DefinedExpression");
738 __ecereClass___ecereNameSpace__ecere__com__EnumClassData = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::EnumClassData");
739 __ecereClass___ecereNameSpace__ecere__com__GlobalFunction = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::GlobalFunction");
740 __ecereClass___ecereNameSpace__ecere__com__Iterator = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Iterator");
741 __ecereProp___ecereNameSpace__ecere__com__Iterator_data = _property = __ecereNameSpace__ecere__com__eClass_FindProperty(__ecereClass___ecereNameSpace__ecere__com__Iterator, "data", module);
742 __ecereClass___ecereNameSpace__ecere__com__IteratorPointer = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::IteratorPointer");
743 __ecereClass___ecereNameSpace__ecere__com__List_TPL_Location_ = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::List<Location>");
744 __ecereClass___ecereNameSpace__ecere__com__Map_TPL_ContextStringPair__ecere__com__List_TPL_Location___ = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Map<ContextStringPair, ecere::com::List<Location> >");
745 __ecereClass___ecereNameSpace__ecere__com__MapIterator = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::MapIterator");
746 __ecereProp___ecereNameSpace__ecere__com__MapIterator_key = _property = __ecereNameSpace__ecere__com__eClass_FindProperty(__ecereClass___ecereNameSpace__ecere__com__MapIterator, "key", module);
747 __ecereProp___ecereNameSpace__ecere__com__MapIterator_map = _property = __ecereNameSpace__ecere__com__eClass_FindProperty(__ecereClass___ecereNameSpace__ecere__com__MapIterator, "map", module);
748 __ecereClass___ecereNameSpace__ecere__com__Method = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Method");
749 __ecereClass___ecereNameSpace__ecere__com__NameSpace = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::NameSpace");
750 __ecereClass___ecereNameSpace__ecere__com__Property = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Property");
751 __ecereClass___ecereNameSpace__ecere__com__SerialBuffer = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::SerialBuffer");
752 __ecereClass___ecereNameSpace__ecere__com__SubModule = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::SubModule");
753 __ecereClass___ecereNameSpace__ecere__com__TemplateMemberType = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::TemplateMemberType");
754 __ecereClass___ecereNameSpace__ecere__gui__controls__BufferLocation = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::gui::controls::BufferLocation");
755 __ecereClass___ecereNameSpace__ecere__gui__controls__EditLine = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::gui::controls::EditLine");
756 __ecereClass___ecereNameSpace__ecere__sys__BTNode = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::BTNode");
757 __ecereProp___ecereNameSpace__ecere__sys__BTNode_next = _property = __ecereNameSpace__ecere__com__eClass_FindProperty(__ecereClass___ecereNameSpace__ecere__sys__BTNode, "next", module);
758 __ecereClass___ecereNameSpace__ecere__sys__BinaryTree = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::BinaryTree");
759 __ecereProp___ecereNameSpace__ecere__sys__BinaryTree_first = _property = __ecereNameSpace__ecere__com__eClass_FindProperty(__ecereClass___ecereNameSpace__ecere__sys__BinaryTree, "first", module);
760 _class = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::File");
761 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Eof", module);
762 if(method)
763 __ecereVMethodID___ecereNameSpace__ecere__sys__File_Eof = method->vid;
764 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "GetSize", module);
765 if(method)
766 __ecereVMethodID___ecereNameSpace__ecere__sys__File_GetSize = method->vid;
767 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Putc", module);
768 if(method)
769 __ecereVMethodID___ecereNameSpace__ecere__sys__File_Putc = method->vid;
770 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Puts", module);
771 if(method)
772 __ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts = method->vid;
773 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Read", module);
774 if(method)
775 __ecereVMethodID___ecereNameSpace__ecere__sys__File_Read = method->vid;
776 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Seek", module);
777 if(method)
778 __ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek = method->vid;
779 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Write", module);
780 if(method)
781 __ecereVMethodID___ecereNameSpace__ecere__sys__File_Write = method->vid;
782 __ecereClass___ecereNameSpace__ecere__sys__Item = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::Item");
783 __ecereClass___ecereNameSpace__ecere__sys__NamedItem = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::NamedItem");
784 __ecereClass___ecereNameSpace__ecere__sys__NamedLink = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::NamedLink");
785 __ecereClass___ecereNameSpace__ecere__sys__OldLink = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::OldLink");
786 __ecereClass___ecereNameSpace__ecere__sys__OldList = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::OldList");
787 __ecereClass___ecereNameSpace__ecere__sys__TempFile = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::TempFile");
788 }
789 if(__currentModule == module)
790 {
791 __ecereCreateModuleInstances_ast();
792 }
793 return 0x1;
794 }
795
796 unsigned int __ecereDll_Unload_ec(struct __ecereNameSpace__ecere__com__Instance * module)
797 {
798 if(__currentModule == module)
799 {
800 __ecereDestroyModuleInstances_ast();
801 }
802 __ecereUnregisterModule_ast(module);
803 __ecereUnregisterModule_copy(module);
804 __ecereUnregisterModule_dbpass(module);
805 __ecereUnregisterModule_ecdefs(module);
806 __ecereUnregisterModule_expression(module);
807 __ecereUnregisterModule_firstPass(module);
808 __ecereUnregisterModule_freeAst(module);
809 __ecereUnregisterModule_grammar(module);
810 __ecereUnregisterModule_lexer(module);
811 __ecereUnregisterModule_loadSymbols(module);
812 __ecereUnregisterModule_output(module);
813 __ecereUnregisterModule_pass0(module);
814 __ecereUnregisterModule_pass1(module);
815 __ecereUnregisterModule_pass15(module);
816 __ecereUnregisterModule_pass16(module);
817 __ecereUnregisterModule_pass2(module);
818 __ecereUnregisterModule_pass3(module);
819 __ecereUnregisterModule_shortcuts(module);
820 __ecereUnregisterModule_type(module);
821 if(__currentModule == module)
822 __currentModule = (void *)0;
823 return 0x1;
824 }
825
826 void __ecereRegisterModule_ec_main(struct __ecereNameSpace__ecere__com__Instance * module)
827 {
828 struct __ecereNameSpace__ecere__com__Class * class;
829
830 }
831
832 void __ecereUnregisterModule_ec_main(struct __ecereNameSpace__ecere__com__Instance * module)
833 {
834
835 }
836