1 /* Code generated from eC source file: OldList.ec */
3 #define __runtimePlatform 1
4 #elif defined(__APPLE__)
5 #define __runtimePlatform 3
7 #define __runtimePlatform 2
10 typedef long long int64;
11 typedef unsigned long long uint64;
15 #elif defined(__TINYC__)
17 #define __builtin_va_list va_list
18 #define __builtin_va_start va_start
19 #define __builtin_va_end va_end
21 #define strcasecmp stricmp
22 #define strncasecmp strnicmp
23 #define __declspec(x) __attribute__((x))
27 typedef long long int64;
28 typedef unsigned long long uint64;
30 typedef __int64 int64;
31 typedef unsigned __int64 uint64;
34 #define __ENDIAN_PAD(x) (8 - (x))
36 #define __ENDIAN_PAD(x) 0
39 #include <sys/types.h>
41 #if /*defined(_W64) || */(defined(__WORDSIZE) && __WORDSIZE == 8) || defined(__x86_64__)
47 #define arch_PointerSize sizeof(void *)
48 #define structSize_Instance (_64BIT ? 24 : 12)
50 struct __ecereNameSpace__ecere__com__Instance;
52 extern void * __ecereNameSpace__ecere__com__eSystem_New(unsigned int size);
54 extern void * __ecereNameSpace__ecere__com__eSystem_New0(unsigned int size);
56 extern void * __ecereNameSpace__ecere__com__eSystem_Renew(void * memory, unsigned int size);
58 extern void * __ecereNameSpace__ecere__com__eSystem_Renew0(void * memory, unsigned int size);
60 extern void __ecereNameSpace__ecere__com__eSystem_Delete(void * memory);
62 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BTNode;
64 struct __ecereNameSpace__ecere__sys__BTNode;
66 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BinaryTree;
68 struct __ecereNameSpace__ecere__sys__BinaryTree
70 struct __ecereNameSpace__ecere__sys__BTNode * root;
72 int (* CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
73 void (* FreeKey)(void * key);
74 } __attribute__ ((gcc_struct));
76 struct __ecereNameSpace__ecere__sys__OldList
82 } __attribute__ ((gcc_struct));
84 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__OldList;
86 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Class;
88 struct __ecereNameSpace__ecere__com__Class
90 struct __ecereNameSpace__ecere__com__Class * prev;
91 struct __ecereNameSpace__ecere__com__Class * next;
97 int (* Constructor)(struct __ecereNameSpace__ecere__com__Instance *);
98 void (* Destructor)(struct __ecereNameSpace__ecere__com__Instance *);
101 struct __ecereNameSpace__ecere__com__Class * base;
102 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
103 struct __ecereNameSpace__ecere__sys__BinaryTree members;
104 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
105 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
106 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
107 struct __ecereNameSpace__ecere__sys__OldList derivatives;
111 struct __ecereNameSpace__ecere__com__Instance * module;
112 struct __ecereNameSpace__ecere__com__NameSpace * nameSpace;
113 const char * dataTypeString;
114 struct __ecereNameSpace__ecere__com__Instance * dataType;
116 int defaultAlignment;
117 void (* Initialize)();
119 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
120 const char * designerClass;
121 unsigned int noExpansion;
122 const char * defaultProperty;
123 unsigned int comRedefinition;
126 unsigned int internalDecl;
128 unsigned int computeSize;
130 int destructionWatchOffset;
132 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
133 int inheritanceAccess;
134 const char * fullName;
136 struct __ecereNameSpace__ecere__sys__OldList conversions;
137 struct __ecereNameSpace__ecere__sys__OldList templateParams;
138 struct __ecereNameSpace__ecere__com__ClassTemplateArgument * templateArgs;
139 struct __ecereNameSpace__ecere__com__Class * templateClass;
140 struct __ecereNameSpace__ecere__sys__OldList templatized;
142 unsigned int isInstanceClass;
143 unsigned int byValueSystemClass;
144 } __attribute__ ((gcc_struct));
146 extern long long __ecereNameSpace__ecere__com__eClass_GetProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char * name);
148 extern void __ecereNameSpace__ecere__com__eClass_SetProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char * name, long long value);
150 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Property;
152 struct __ecereNameSpace__ecere__com__Property
154 struct __ecereNameSpace__ecere__com__Property * prev;
155 struct __ecereNameSpace__ecere__com__Property * next;
157 unsigned int isProperty;
160 struct __ecereNameSpace__ecere__com__Class * _class;
161 const char * dataTypeString;
162 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
163 struct __ecereNameSpace__ecere__com__Instance * dataType;
164 void (* Set)(void * , int);
165 int (* Get)(void * );
166 unsigned int (* IsSet)(void * );
170 unsigned int conversion;
171 unsigned int watcherOffset;
172 const char * category;
173 unsigned int compiled;
174 unsigned int selfWatchable;
175 unsigned int isWatchable;
176 } __attribute__ ((gcc_struct));
178 extern void __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
180 extern void __ecereNameSpace__ecere__com__eInstance_SetMethod(struct __ecereNameSpace__ecere__com__Instance * instance, const char * name, void * function);
182 extern void __ecereNameSpace__ecere__com__eInstance_IncRef(struct __ecereNameSpace__ecere__com__Instance * instance);
184 extern void __ecereNameSpace__ecere__com__eInstance_StopWatching(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property, struct __ecereNameSpace__ecere__com__Instance * object);
186 extern void __ecereNameSpace__ecere__com__eInstance_Watch(void * instance, struct __ecereNameSpace__ecere__com__Property * _property, void * object, void (* callback)(void * , void * ));
188 extern void __ecereNameSpace__ecere__com__eInstance_FireWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
190 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Instance;
192 struct __ecereNameSpace__ecere__com__Instance
195 struct __ecereNameSpace__ecere__com__Class * _class;
197 } __attribute__ ((gcc_struct));
199 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataMember;
201 struct __ecereNameSpace__ecere__com__DataMember
203 struct __ecereNameSpace__ecere__com__DataMember * prev;
204 struct __ecereNameSpace__ecere__com__DataMember * next;
206 unsigned int isProperty;
209 struct __ecereNameSpace__ecere__com__Class * _class;
210 const char * dataTypeString;
211 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
212 struct __ecereNameSpace__ecere__com__Instance * dataType;
216 struct __ecereNameSpace__ecere__sys__OldList members;
217 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
220 } __attribute__ ((gcc_struct));
222 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Method;
224 struct __ecereNameSpace__ecere__com__Method
227 struct __ecereNameSpace__ecere__com__Method * parent;
228 struct __ecereNameSpace__ecere__com__Method * left;
229 struct __ecereNameSpace__ecere__com__Method * right;
234 struct __ecereNameSpace__ecere__com__Class * _class;
236 const char * dataTypeString;
237 struct __ecereNameSpace__ecere__com__Instance * dataType;
239 } __attribute__ ((gcc_struct));
241 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__SerialBuffer;
243 struct __ecereNameSpace__ecere__com__SerialBuffer
245 unsigned char * _buffer;
249 } __attribute__ ((gcc_struct));
251 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataValue;
253 struct __ecereNameSpace__ecere__com__DataValue
268 } __attribute__ ((gcc_struct)) __anon1;
269 } __attribute__ ((gcc_struct));
271 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__ClassTemplateArgument;
273 struct __ecereNameSpace__ecere__com__ClassTemplateArgument
279 const char * dataTypeString;
280 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
281 } __attribute__ ((gcc_struct)) __anon1;
282 struct __ecereNameSpace__ecere__com__DataValue expression;
285 const char * memberString;
288 struct __ecereNameSpace__ecere__com__DataMember * member;
289 struct __ecereNameSpace__ecere__com__Property * prop;
290 struct __ecereNameSpace__ecere__com__Method * method;
291 } __attribute__ ((gcc_struct)) __anon1;
292 } __attribute__ ((gcc_struct)) __anon2;
293 } __attribute__ ((gcc_struct)) __anon1;
294 } __attribute__ ((gcc_struct));
296 struct __ecereNameSpace__ecere__sys__Item
298 struct __ecereNameSpace__ecere__sys__Item * prev, * next;
299 } __attribute__ ((gcc_struct));
301 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__Item;
303 extern void * memcpy(void * , const void * , size_t size);
305 void __ecereMethod___ecereNameSpace__ecere__sys__Item_Copy(struct __ecereNameSpace__ecere__sys__Item * this, struct __ecereNameSpace__ecere__sys__Item * src, int size)
307 memcpy((unsigned char *)this + sizeof(struct __ecereNameSpace__ecere__sys__Item), (unsigned char *)src + sizeof(struct __ecereNameSpace__ecere__sys__Item), size - sizeof(struct __ecereNameSpace__ecere__sys__Item *));
310 struct __ecereNameSpace__ecere__sys__NamedItem
312 struct __ecereNameSpace__ecere__sys__NamedItem * prev, * next;
314 } __attribute__ ((gcc_struct));
316 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__NamedItem;
318 struct __ecereNameSpace__ecere__sys__OldLink
320 struct __ecereNameSpace__ecere__sys__OldLink * prev, * next;
322 } __attribute__ ((gcc_struct));
324 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__OldLink;
326 void __ecereMethod___ecereNameSpace__ecere__sys__OldLink_Free(struct __ecereNameSpace__ecere__sys__OldLink * this)
328 (__ecereNameSpace__ecere__com__eSystem_Delete(this->data), this->data = 0);
331 struct __ecereNameSpace__ecere__sys__NamedLink
333 struct __ecereNameSpace__ecere__sys__NamedLink * prev, * next;
336 } __attribute__ ((gcc_struct));
338 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__NamedLink;
340 struct __ecereNameSpace__ecere__sys__NamedLink64
342 struct __ecereNameSpace__ecere__sys__NamedLink64 * prev, * next;
345 } __attribute__ ((gcc_struct));
347 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__NamedLink64;
349 void __ecereMethod___ecereNameSpace__ecere__sys__OldList_Clear(struct __ecereNameSpace__ecere__sys__OldList * this);
351 void __ecereMethod___ecereNameSpace__ecere__sys__OldList_Remove(struct __ecereNameSpace__ecere__sys__OldList * this, void * item);
353 void __ecereMethod___ecereNameSpace__ecere__sys__OldList_Add(struct __ecereNameSpace__ecere__sys__OldList * this, void * item);
355 void __ecereMethod___ecereNameSpace__ecere__sys__OldList_Merge(struct __ecereNameSpace__ecere__sys__OldList * this, struct __ecereNameSpace__ecere__sys__OldList * list1, struct __ecereNameSpace__ecere__sys__OldList * list2, int (* compare)(void *, void *, void *), void * data)
359 __ecereMethod___ecereNameSpace__ecere__sys__OldList_Clear(this);
360 this->offset = list1->offset;
361 while((list1->first && list2->first))
363 if(compare(list1->first, list2->first, data) <= 0)
366 __ecereMethod___ecereNameSpace__ecere__sys__OldList_Remove(list1, item);
371 __ecereMethod___ecereNameSpace__ecere__sys__OldList_Remove(list2, item);
373 __ecereMethod___ecereNameSpace__ecere__sys__OldList_Add(this, item);
375 while((item = list1->first))
377 __ecereMethod___ecereNameSpace__ecere__sys__OldList_Remove(list1, item);
378 __ecereMethod___ecereNameSpace__ecere__sys__OldList_Add(this, item);
380 while((item = list2->first))
382 __ecereMethod___ecereNameSpace__ecere__sys__OldList_Remove(list2, item);
383 __ecereMethod___ecereNameSpace__ecere__sys__OldList_Add(this, item);
387 void __ecereMethod___ecereNameSpace__ecere__sys__OldList_Add(struct __ecereNameSpace__ecere__sys__OldList * this, void * item)
391 struct __ecereNameSpace__ecere__sys__Item * link = (struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)item + this->offset);
393 link->prev = this->last;
395 ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)link->prev + this->offset))->next = item;
399 link->next = this->circ ? this->first : (((void *)0));
401 ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)this->first + this->offset))->prev = item;
406 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__OldList_Insert(struct __ecereNameSpace__ecere__sys__OldList * this, void * prevItem, void * item)
408 if(item && prevItem != item)
410 struct __ecereNameSpace__ecere__sys__Item * prevLink = (struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)prevItem + this->offset);
411 struct __ecereNameSpace__ecere__sys__Item * link = (struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)item + this->offset);
413 link->prev = prevItem ? prevItem : (this->circ ? this->last : (((void *)0)));
416 link->next = prevLink->next;
417 prevLink->next = item;
421 link->next = this->first;
426 ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)link->prev + this->offset))->next = item;
431 if(prevItem == this->last)
434 ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)link->next + this->offset))->prev = item;
441 void __ecereMethod___ecereNameSpace__ecere__sys__OldList_Remove(struct __ecereNameSpace__ecere__sys__OldList * this, void * item)
445 struct __ecereNameSpace__ecere__sys__Item * link = (struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)item + this->offset);
448 ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)link->prev + this->offset))->next = link->next;
450 ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)link->next + this->offset))->prev = link->prev;
451 if(this->circ && this->last == this->first)
452 this->last = this->first = (((void *)0));
455 if(this->last == item)
456 this->last = link->prev;
457 if(this->first == item)
458 this->first = link->next;
460 link->prev = (((void *)0));
461 link->next = (((void *)0));
466 void __ecereMethod___ecereNameSpace__ecere__sys__OldList_Delete(struct __ecereNameSpace__ecere__sys__OldList * this, void * item)
470 __ecereMethod___ecereNameSpace__ecere__sys__OldList_Remove(this, item);
471 (__ecereNameSpace__ecere__com__eSystem_Delete(item), item = 0);
475 void __ecereMethod___ecereNameSpace__ecere__sys__OldList_Free(struct __ecereNameSpace__ecere__sys__OldList * this, void (* freeFn)(void *))
479 for(item = this->first; item; item = next)
481 struct __ecereNameSpace__ecere__sys__Item * link = (struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)item + this->offset);
486 (__ecereNameSpace__ecere__com__eSystem_Delete(item), item = 0);
487 if(next == this->first)
490 this->first = this->last = (((void *)0));
494 void __ecereMethod___ecereNameSpace__ecere__sys__OldList_RemoveAll(struct __ecereNameSpace__ecere__sys__OldList * this, void (* freeFn)(void *))
498 for(item = this->first; item; item = next)
500 struct __ecereNameSpace__ecere__sys__Item * link = (struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)item + this->offset);
505 if(next == this->first)
508 this->first = this->last = (((void *)0));
512 void __ecereMethod___ecereNameSpace__ecere__sys__OldList_Clear(struct __ecereNameSpace__ecere__sys__OldList * this)
517 this->first = this->last = (((void *)0));
520 void __ecereMethod___ecereNameSpace__ecere__sys__OldList_Move(struct __ecereNameSpace__ecere__sys__OldList * this, void * item, void * prevItem)
524 struct __ecereNameSpace__ecere__sys__Item * link = (struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)item + this->offset);
525 struct __ecereNameSpace__ecere__sys__Item * prevLink = (struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)prevItem + this->offset);
527 if(prevItem != item && (this->first != item || prevItem))
530 ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)link->prev + this->offset))->next = link->next;
532 ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)link->next + this->offset))->prev = link->prev;
533 if(item == this->first)
534 this->first = link->next;
535 if(item == this->last)
536 this->last = link->prev;
537 if(prevItem == this->last)
539 link->prev = prevItem ? prevItem : (this->circ ? this->last : (((void *)0)));
542 link->next = prevLink->next;
543 prevLink->next = item;
547 link->next = this->first;
552 ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)link->prev + this->offset))->next = item;
558 ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)link->next + this->offset))->prev = item;
563 void __ecereMethod___ecereNameSpace__ecere__sys__OldList_Swap(struct __ecereNameSpace__ecere__sys__OldList * this, void * item1, void * item2)
565 struct __ecereNameSpace__ecere__sys__Item * link1 = (struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)item1 + this->offset);
566 struct __ecereNameSpace__ecere__sys__Item * link2 = (struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)item2 + this->offset);
567 struct __ecereNameSpace__ecere__sys__Item * prev1 = link1->prev, * next1 = link1->next;
568 void * tmp1 = item1, * tmp2 = item2;
570 link1->prev = link2->prev;
571 link1->next = link2->next;
574 if(this->first == tmp1)
576 else if(this->first == tmp2)
578 if(this->last == tmp1)
580 else if(this->last == tmp2)
583 ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)link1->next + this->offset))->prev = item2;
585 ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)link1->prev + this->offset))->next = item2;
587 ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)link2->next + this->offset))->prev = item1;
589 ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)link2->prev + this->offset))->next = item1;
592 void __ecereMethod___ecereNameSpace__ecere__sys__OldList_Sort(struct __ecereNameSpace__ecere__sys__OldList * this, int (* compare)(void *, void *, void *), void * data)
594 if(this->first && ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)this->first + this->offset))->next)
596 struct __ecereNameSpace__ecere__sys__OldList list1, list2;
597 void * middle, * end;
599 for(middle = this->first, list1.count = 0, list2.count = 0, end = ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)this->first + this->offset))->next; middle && end; middle = ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)middle + this->offset))->next, list1.count++, end = ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)end + this->offset))->next, list2.count++)
601 end = ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)end + this->offset))->next;
605 list1.offset = this->offset;
606 list2.offset = this->offset;
607 list1.circ = this->circ;
608 list2.circ = this->circ;
609 list1.first = this->first;
611 list2.first = ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)middle + this->offset))->next;
612 list2.last = this->last;
613 ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)list1.last + this->offset))->next = (((void *)0));
614 ((struct __ecereNameSpace__ecere__sys__Item *)((unsigned char *)list2.first + this->offset))->prev = (((void *)0));
615 __ecereMethod___ecereNameSpace__ecere__sys__OldList_Sort(&list1, compare, data);
616 __ecereMethod___ecereNameSpace__ecere__sys__OldList_Sort(&list2, compare, data);
617 __ecereMethod___ecereNameSpace__ecere__sys__OldList_Merge(this, &list1, &list2, compare, data);
621 extern int strcmp(const char * , const char * );
623 void * __ecereMethod___ecereNameSpace__ecere__sys__OldList_FindName(struct __ecereNameSpace__ecere__sys__OldList * this, const char * name, unsigned int warn)
625 void * result = (((void *)0));
630 struct __ecereNameSpace__ecere__sys__NamedItem * link;
633 for(item = this->first; item; item = link->next)
635 link = (struct __ecereNameSpace__ecere__sys__NamedItem *)(((unsigned char *)item) + this->offset);
636 if(link->name && (compare = strcmp(link->name, name)) >= 0)
647 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__OldList_PlaceName(struct __ecereNameSpace__ecere__sys__OldList * this, const char * name, void ** place)
649 unsigned int result = 1;
651 struct __ecereNameSpace__ecere__sys__NamedItem * link;
654 for(item = this->first; item; item = link->next)
656 link = (struct __ecereNameSpace__ecere__sys__NamedItem *)((unsigned char *)item + this->offset);
657 if(link->name && (compare = strcmp(link->name, name)) >= 0)
671 unsigned int __ecereMethod___ecereNameSpace__ecere__sys__OldList_AddName(struct __ecereNameSpace__ecere__sys__OldList * this, void * item)
673 unsigned int result = 0;
675 struct __ecereNameSpace__ecere__sys__NamedItem * link = ((struct __ecereNameSpace__ecere__sys__NamedItem *)((unsigned char *)item + this->offset));
677 if(__ecereMethod___ecereNameSpace__ecere__sys__OldList_PlaceName(this, link->name, &place))
679 __ecereMethod___ecereNameSpace__ecere__sys__OldList_Insert(this, place, item);
685 struct __ecereNameSpace__ecere__sys__OldLink * __ecereMethod___ecereNameSpace__ecere__sys__OldList_FindLink(struct __ecereNameSpace__ecere__sys__OldList * this, void * data)
688 struct __ecereNameSpace__ecere__sys__OldLink * link;
690 for(item = this->first; item; item = link->next)
692 link = (struct __ecereNameSpace__ecere__sys__OldLink *)((unsigned char *)item + this->offset);
693 if(link->data == data)
699 void * __ecereMethod___ecereNameSpace__ecere__sys__OldList_FindNamedLink(struct __ecereNameSpace__ecere__sys__OldList * this, const char * name, unsigned int warn)
703 void * item = __ecereMethod___ecereNameSpace__ecere__sys__OldList_FindName(this, name, warn);
705 return item ? ((struct __ecereNameSpace__ecere__sys__NamedLink *)((unsigned char *)item + this->offset))->data : (((void *)0));
707 return (((void *)0));
710 void __ecereMethod___ecereNameSpace__ecere__sys__OldList_Copy(struct __ecereNameSpace__ecere__sys__OldList * this, struct __ecereNameSpace__ecere__sys__OldList * src, int size, void (* copy)(void * dest, void * src))
712 struct __ecereNameSpace__ecere__sys__Item * item;
714 __ecereMethod___ecereNameSpace__ecere__sys__OldList_Clear(this);
715 for(item = src->first; item; item = item->next)
717 struct __ecereNameSpace__ecere__sys__Item * newItem = (struct __ecereNameSpace__ecere__sys__Item *)__ecereNameSpace__ecere__com__eSystem_New0(sizeof(unsigned char) * (size));
719 __ecereMethod___ecereNameSpace__ecere__sys__OldList_Add(this, newItem);
720 __ecereMethod___ecereNameSpace__ecere__sys__Item_Copy(newItem, item, size);
726 extern struct __ecereNameSpace__ecere__com__Class * __ecereNameSpace__ecere__com__eSystem_RegisterClass(int type, const char * name, const char * baseName, int size, int sizeClass, unsigned int (* Constructor)(void * ), void (* Destructor)(void * ), struct __ecereNameSpace__ecere__com__Instance * module, int declMode, int inheritanceAccess);
728 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__NameSpace;
730 struct __ecereNameSpace__ecere__com__NameSpace
733 struct __ecereNameSpace__ecere__com__NameSpace * btParent;
734 struct __ecereNameSpace__ecere__com__NameSpace * left;
735 struct __ecereNameSpace__ecere__com__NameSpace * right;
737 struct __ecereNameSpace__ecere__com__NameSpace * parent;
738 struct __ecereNameSpace__ecere__sys__BinaryTree nameSpaces;
739 struct __ecereNameSpace__ecere__sys__BinaryTree classes;
740 struct __ecereNameSpace__ecere__sys__BinaryTree defines;
741 struct __ecereNameSpace__ecere__sys__BinaryTree functions;
742 } __attribute__ ((gcc_struct));
744 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Module;
746 struct __ecereNameSpace__ecere__com__Module
748 struct __ecereNameSpace__ecere__com__Instance * application;
749 struct __ecereNameSpace__ecere__sys__OldList classes;
750 struct __ecereNameSpace__ecere__sys__OldList defines;
751 struct __ecereNameSpace__ecere__sys__OldList functions;
752 struct __ecereNameSpace__ecere__sys__OldList modules;
753 struct __ecereNameSpace__ecere__com__Instance * prev;
754 struct __ecereNameSpace__ecere__com__Instance * next;
760 struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace;
761 struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
762 } __attribute__ ((gcc_struct));
764 extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
766 extern struct __ecereNameSpace__ecere__com__Method * __ecereNameSpace__ecere__com__eClass_AddMethod(struct __ecereNameSpace__ecere__com__Class * _class, const char * name, const char * type, void * function, int declMode);
768 extern struct __ecereNameSpace__ecere__com__DataMember * __ecereNameSpace__ecere__com__eClass_AddDataMember(struct __ecereNameSpace__ecere__com__Class * _class, const char * name, const char * type, unsigned int size, unsigned int alignment, int declMode);
770 void __ecereRegisterModule_OldList(struct __ecereNameSpace__ecere__com__Instance * module)
772 struct __ecereNameSpace__ecere__com__Class __attribute__((unused)) * class;
774 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(5, "ecere::sys::Item", 0, sizeof(struct __ecereNameSpace__ecere__sys__Item), 0, 0, 0, module, 4, 1);
775 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + structSize_Instance)))->application && class)
776 __ecereClass___ecereNameSpace__ecere__sys__Item = class;
777 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Copy", "void Copy(ecere::sys::Item src, int size)", __ecereMethod___ecereNameSpace__ecere__sys__Item_Copy, 1);
778 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "prev", "ecere::sys::Item", arch_PointerSize, arch_PointerSize, 1);
779 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "next", "ecere::sys::Item", arch_PointerSize, arch_PointerSize, 1);
781 class->fixed = (unsigned int)1;
782 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(5, "ecere::sys::NamedItem", 0, sizeof(struct __ecereNameSpace__ecere__sys__NamedItem), 0, 0, 0, module, 4, 1);
783 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + structSize_Instance)))->application && class)
784 __ecereClass___ecereNameSpace__ecere__sys__NamedItem = class;
785 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "prev", "ecere::sys::NamedItem", arch_PointerSize, arch_PointerSize, 1);
786 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "next", "ecere::sys::NamedItem", arch_PointerSize, arch_PointerSize, 1);
787 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "name", "char *", arch_PointerSize, arch_PointerSize, 1);
789 class->fixed = (unsigned int)1;
790 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(5, "ecere::sys::OldLink", 0, sizeof(struct __ecereNameSpace__ecere__sys__OldLink), 0, 0, 0, module, 4, 1);
791 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + structSize_Instance)))->application && class)
792 __ecereClass___ecereNameSpace__ecere__sys__OldLink = class;
793 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Free", "void Free()", __ecereMethod___ecereNameSpace__ecere__sys__OldLink_Free, 1);
794 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "prev", "ecere::sys::OldLink", arch_PointerSize, arch_PointerSize, 1);
795 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "next", "ecere::sys::OldLink", arch_PointerSize, arch_PointerSize, 1);
796 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "data", "void *", arch_PointerSize, arch_PointerSize, 1);
798 class->fixed = (unsigned int)1;
799 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(5, "ecere::sys::NamedLink", 0, sizeof(struct __ecereNameSpace__ecere__sys__NamedLink), 0, 0, 0, module, 4, 1);
800 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + structSize_Instance)))->application && class)
801 __ecereClass___ecereNameSpace__ecere__sys__NamedLink = class;
802 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "prev", "ecere::sys::NamedLink", arch_PointerSize, arch_PointerSize, 1);
803 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "next", "ecere::sys::NamedLink", arch_PointerSize, arch_PointerSize, 1);
804 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "name", "char *", arch_PointerSize, arch_PointerSize, 1);
805 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "data", "void *", arch_PointerSize, arch_PointerSize, 1);
807 class->fixed = (unsigned int)1;
808 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(5, "ecere::sys::NamedLink64", 0, sizeof(struct __ecereNameSpace__ecere__sys__NamedLink64), 0, 0, 0, module, 4, 1);
809 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + structSize_Instance)))->application && class)
810 __ecereClass___ecereNameSpace__ecere__sys__NamedLink64 = class;
811 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "prev", "ecere::sys::NamedLink64", arch_PointerSize, arch_PointerSize, 1);
812 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "next", "ecere::sys::NamedLink64", arch_PointerSize, arch_PointerSize, 1);
813 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "name", "char *", arch_PointerSize, arch_PointerSize, 1);
814 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "data", "int64", 8, 8, 1);
816 class->fixed = (unsigned int)1;
817 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(1, "ecere::sys::OldList", 0, sizeof(struct __ecereNameSpace__ecere__sys__OldList), 0, 0, 0, module, 4, 1);
818 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + structSize_Instance)))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + structSize_Instance)))->application && class)
819 __ecereClass___ecereNameSpace__ecere__sys__OldList = class;
820 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Add", "void Add(void * item)", __ecereMethod___ecereNameSpace__ecere__sys__OldList_Add, 1);
821 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "AddName", "bool AddName(void * item)", __ecereMethod___ecereNameSpace__ecere__sys__OldList_AddName, 1);
822 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Clear", "void Clear(void)", __ecereMethod___ecereNameSpace__ecere__sys__OldList_Clear, 1);
823 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Copy", "void Copy(ecere::sys::OldList src, int size, void (* copy)(void * dest, void * src))", __ecereMethod___ecereNameSpace__ecere__sys__OldList_Copy, 1);
824 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Delete", "void Delete(void * item)", __ecereMethod___ecereNameSpace__ecere__sys__OldList_Delete, 1);
825 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "FindLink", "ecere::sys::OldLink FindLink(void * data)", __ecereMethod___ecereNameSpace__ecere__sys__OldList_FindLink, 1);
826 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "FindName", "void * FindName(const char * name, bool warn)", __ecereMethod___ecereNameSpace__ecere__sys__OldList_FindName, 1);
827 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "FindNamedLink", "void * FindNamedLink(const char * name, bool warn)", __ecereMethod___ecereNameSpace__ecere__sys__OldList_FindNamedLink, 1);
828 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Free", "void Free(void (* freeFn)(void *))", __ecereMethod___ecereNameSpace__ecere__sys__OldList_Free, 1);
829 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Insert", "bool Insert(void * prevItem, void * item)", __ecereMethod___ecereNameSpace__ecere__sys__OldList_Insert, 1);
830 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Move", "void Move(void * item, void * prevItem)", __ecereMethod___ecereNameSpace__ecere__sys__OldList_Move, 1);
831 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "PlaceName", "bool PlaceName(const char * name, void ** place)", __ecereMethod___ecereNameSpace__ecere__sys__OldList_PlaceName, 1);
832 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Remove", "void Remove(void * item)", __ecereMethod___ecereNameSpace__ecere__sys__OldList_Remove, 1);
833 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "RemoveAll", "void RemoveAll(void (* freeFn)(void *))", __ecereMethod___ecereNameSpace__ecere__sys__OldList_RemoveAll, 1);
834 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Sort", "void Sort(int (* compare)(void *, void *, void *), void * data)", __ecereMethod___ecereNameSpace__ecere__sys__OldList_Sort, 1);
835 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Swap", "void Swap(void * item1, void * item2)", __ecereMethod___ecereNameSpace__ecere__sys__OldList_Swap, 1);
836 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "first", "void *", arch_PointerSize, arch_PointerSize, 1);
837 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "last", "void *", arch_PointerSize, arch_PointerSize, 1);
838 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "count", "int", 4, 4, 1);
839 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "offset", "uint", 4, 4, 1);
840 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "circ", "bool", 4, 4, 1);
843 void __ecereUnregisterModule_OldList(struct __ecereNameSpace__ecere__com__Instance * module)