1 /* Code generated from eC source file: LinkList.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 # if defined(__GNUC__) || defined(__TINYC__)
40 # define ecere_stdcall __attribute__((__stdcall__))
41 # define ecere_gcc_struct __attribute__((gcc_struct))
43 # define ecere_stdcall __stdcall
44 # define ecere_gcc_struct
47 # define ecere_stdcall
48 # define ecere_gcc_struct
51 #include <sys/types.h>
52 struct __ecereNameSpace__ecere__com__LinkElement
57 struct __ecereNameSpace__ecere__com__LinkList
63 struct __ecereNameSpace__ecere__sys__BTNode;
65 struct __ecereNameSpace__ecere__sys__OldList
74 struct __ecereNameSpace__ecere__com__DataValue
89 } ecere_gcc_struct __anon1;
92 struct __ecereNameSpace__ecere__com__SerialBuffer
94 unsigned char * _buffer;
100 extern void * __ecereNameSpace__ecere__com__eSystem_New(unsigned int size);
102 extern void * __ecereNameSpace__ecere__com__eSystem_New0(unsigned int size);
104 extern void * __ecereNameSpace__ecere__com__eSystem_Renew(void * memory, unsigned int size);
106 extern void * __ecereNameSpace__ecere__com__eSystem_Renew0(void * memory, unsigned int size);
108 extern void __ecereNameSpace__ecere__com__eSystem_Delete(void * memory);
110 struct __ecereNameSpace__ecere__com__IteratorPointer;
112 struct __ecereNameSpace__ecere__com__ClassTemplateParameter;
114 int __ecereVMethodID_class_OnFree;
116 struct __ecereNameSpace__ecere__com__Class;
118 struct __ecereNameSpace__ecere__com__Instance
121 struct __ecereNameSpace__ecere__com__Class * _class;
125 extern long long __ecereNameSpace__ecere__com__eClass_GetProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char * name);
127 extern void __ecereNameSpace__ecere__com__eClass_SetProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char * name, long long value);
129 extern void __ecereNameSpace__ecere__com__eClass_DoneAddingTemplateParameters(struct __ecereNameSpace__ecere__com__Class * base);
131 extern void __ecereNameSpace__ecere__com__eInstance_SetMethod(struct __ecereNameSpace__ecere__com__Instance * instance, const char * name, void * function);
133 extern void __ecereNameSpace__ecere__com__eInstance_IncRef(struct __ecereNameSpace__ecere__com__Instance * instance);
135 int __ecereVMethodID___ecereNameSpace__ecere__com__Container_Remove;
137 struct __ecereNameSpace__ecere__com__Property;
139 struct __ecereNameSpace__ecere__com__Property
141 struct __ecereNameSpace__ecere__com__Property * prev;
142 struct __ecereNameSpace__ecere__com__Property * next;
144 unsigned int isProperty;
147 struct __ecereNameSpace__ecere__com__Class * _class;
148 const char * dataTypeString;
149 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
150 struct __ecereNameSpace__ecere__com__Instance * dataType;
151 void (* Set)(void * , int);
152 int (* Get)(void * );
153 unsigned int (* IsSet)(void * );
157 unsigned int conversion;
158 unsigned int watcherOffset;
159 const char * category;
160 unsigned int compiled;
161 unsigned int selfWatchable;
162 unsigned int isWatchable;
165 extern void __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
167 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);
169 extern void __ecereNameSpace__ecere__com__eInstance_Watch(void * instance, struct __ecereNameSpace__ecere__com__Property * _property, void * object, void (* callback)(void * , void * ));
171 extern void __ecereNameSpace__ecere__com__eInstance_FireWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
173 struct __ecereNameSpace__ecere__com__DataMember;
175 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);
177 extern struct __ecereNameSpace__ecere__com__DataMember * __ecereNameSpace__ecere__com__eMember_New(int type, int declMode);
179 extern struct __ecereNameSpace__ecere__com__DataMember * __ecereNameSpace__ecere__com__eMember_AddDataMember(struct __ecereNameSpace__ecere__com__DataMember * member, const char * name, const char * type, unsigned int size, unsigned int alignment, int declMode);
181 extern unsigned int __ecereNameSpace__ecere__com__eMember_AddMember(struct __ecereNameSpace__ecere__com__DataMember * addTo, struct __ecereNameSpace__ecere__com__DataMember * dataMember);
183 extern unsigned int __ecereNameSpace__ecere__com__eClass_AddMember(struct __ecereNameSpace__ecere__com__Class * _class, struct __ecereNameSpace__ecere__com__DataMember * dataMember);
185 struct __ecereNameSpace__ecere__sys__BinaryTree;
187 struct __ecereNameSpace__ecere__sys__BinaryTree
189 struct __ecereNameSpace__ecere__sys__BTNode * root;
191 int (* CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
192 void (* FreeKey)(void * key);
195 struct __ecereNameSpace__ecere__com__DataMember
197 struct __ecereNameSpace__ecere__com__DataMember * prev;
198 struct __ecereNameSpace__ecere__com__DataMember * next;
200 unsigned int isProperty;
203 struct __ecereNameSpace__ecere__com__Class * _class;
204 const char * dataTypeString;
205 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
206 struct __ecereNameSpace__ecere__com__Instance * dataType;
210 struct __ecereNameSpace__ecere__sys__OldList members;
211 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
213 short structAlignment;
214 short pointerAlignment;
217 struct __ecereNameSpace__ecere__com__ListItem;
219 struct __ecereNameSpace__ecere__com__ListItem
223 struct __ecereNameSpace__ecere__com__LinkElement link;
226 struct __ecereNameSpace__ecere__com__ListItem * prev, * next;
227 } ecere_gcc_struct __anon1;
228 } ecere_gcc_struct __anon1;
231 struct __ecereNameSpace__ecere__com__Method;
233 struct __ecereNameSpace__ecere__com__ClassTemplateArgument
239 const char * dataTypeString;
240 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
241 } ecere_gcc_struct __anon1;
242 struct __ecereNameSpace__ecere__com__DataValue expression;
245 const char * memberString;
248 struct __ecereNameSpace__ecere__com__DataMember * member;
249 struct __ecereNameSpace__ecere__com__Property * prop;
250 struct __ecereNameSpace__ecere__com__Method * method;
251 } ecere_gcc_struct __anon1;
252 } ecere_gcc_struct __anon2;
253 } ecere_gcc_struct __anon1;
256 struct __ecereNameSpace__ecere__com__Method
259 struct __ecereNameSpace__ecere__com__Method * parent;
260 struct __ecereNameSpace__ecere__com__Method * left;
261 struct __ecereNameSpace__ecere__com__Method * right;
266 struct __ecereNameSpace__ecere__com__Class * _class;
268 const char * dataTypeString;
269 struct __ecereNameSpace__ecere__com__Instance * dataType;
273 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);
275 extern struct __ecereNameSpace__ecere__com__ClassTemplateParameter * __ecereNameSpace__ecere__com__eClass_AddTemplateParameter(struct __ecereNameSpace__ecere__com__Class * _class, const char * name, int type, const void * info, struct __ecereNameSpace__ecere__com__ClassTemplateArgument * defaultArg);
277 struct __ecereNameSpace__ecere__com__Module;
279 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);
281 extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
283 struct __ecereNameSpace__ecere__com__NameSpace;
285 struct __ecereNameSpace__ecere__com__NameSpace
288 struct __ecereNameSpace__ecere__com__NameSpace * btParent;
289 struct __ecereNameSpace__ecere__com__NameSpace * left;
290 struct __ecereNameSpace__ecere__com__NameSpace * right;
292 struct __ecereNameSpace__ecere__com__NameSpace * parent;
293 struct __ecereNameSpace__ecere__sys__BinaryTree nameSpaces;
294 struct __ecereNameSpace__ecere__sys__BinaryTree classes;
295 struct __ecereNameSpace__ecere__sys__BinaryTree defines;
296 struct __ecereNameSpace__ecere__sys__BinaryTree functions;
299 struct __ecereNameSpace__ecere__com__Class
301 struct __ecereNameSpace__ecere__com__Class * prev;
302 struct __ecereNameSpace__ecere__com__Class * next;
308 unsigned int (* Constructor)(void * );
309 void (* Destructor)(void * );
312 struct __ecereNameSpace__ecere__com__Class * base;
313 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
314 struct __ecereNameSpace__ecere__sys__BinaryTree members;
315 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
316 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
317 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
318 struct __ecereNameSpace__ecere__sys__OldList derivatives;
322 struct __ecereNameSpace__ecere__com__Instance * module;
323 struct __ecereNameSpace__ecere__com__NameSpace * nameSpace;
324 const char * dataTypeString;
325 struct __ecereNameSpace__ecere__com__Instance * dataType;
327 int defaultAlignment;
328 void (* Initialize)();
330 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
331 const char * designerClass;
332 unsigned int noExpansion;
333 const char * defaultProperty;
334 unsigned int comRedefinition;
337 unsigned int internalDecl;
339 unsigned int computeSize;
340 short structAlignment;
341 short pointerAlignment;
342 int destructionWatchOffset;
344 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
345 int inheritanceAccess;
346 const char * fullName;
348 struct __ecereNameSpace__ecere__sys__OldList conversions;
349 struct __ecereNameSpace__ecere__sys__OldList templateParams;
350 struct __ecereNameSpace__ecere__com__ClassTemplateArgument * templateArgs;
351 struct __ecereNameSpace__ecere__com__Class * templateClass;
352 struct __ecereNameSpace__ecere__sys__OldList templatized;
354 unsigned int isInstanceClass;
355 unsigned int byValueSystemClass;
358 struct __ecereNameSpace__ecere__com__Application
363 unsigned int isGUIApp;
364 struct __ecereNameSpace__ecere__sys__OldList allModules;
365 char * parsedCommand;
366 struct __ecereNameSpace__ecere__com__NameSpace systemNameSpace;
369 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__LinkElement;
371 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__ListItem;
373 static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__LinkList;
375 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Instance;
377 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Module;
379 struct __ecereNameSpace__ecere__com__Module
381 struct __ecereNameSpace__ecere__com__Instance * application;
382 struct __ecereNameSpace__ecere__sys__OldList classes;
383 struct __ecereNameSpace__ecere__sys__OldList defines;
384 struct __ecereNameSpace__ecere__sys__OldList functions;
385 struct __ecereNameSpace__ecere__sys__OldList modules;
386 struct __ecereNameSpace__ecere__com__Instance * prev;
387 struct __ecereNameSpace__ecere__com__Instance * next;
393 struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace;
394 struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
397 void * __ecereMethod___ecereNameSpace__ecere__com__LinkList_GetFirst(struct __ecereNameSpace__ecere__com__Instance * this)
399 __attribute__((unused)) struct __ecereNameSpace__ecere__com__LinkList * __ecerePointer___ecereNameSpace__ecere__com__LinkList = (struct __ecereNameSpace__ecere__com__LinkList *)(this ? (((char *)this) + 0 + sizeof(struct __ecereNameSpace__ecere__com__Instance)) : 0);
401 return ((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->first)));
404 void * __ecereMethod___ecereNameSpace__ecere__com__LinkList_GetLast(struct __ecereNameSpace__ecere__com__Instance * this)
406 __attribute__((unused)) struct __ecereNameSpace__ecere__com__LinkList * __ecerePointer___ecereNameSpace__ecere__com__LinkList = (struct __ecereNameSpace__ecere__com__LinkList *)(this ? (((char *)this) + 0 + sizeof(struct __ecereNameSpace__ecere__com__Instance)) : 0);
408 return ((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->last)));
411 void * __ecereMethod___ecereNameSpace__ecere__com__LinkList_GetData(struct __ecereNameSpace__ecere__com__Instance * this, struct __ecereNameSpace__ecere__com__IteratorPointer * pointer)
413 __attribute__((unused)) struct __ecereNameSpace__ecere__com__LinkList * __ecerePointer___ecereNameSpace__ecere__com__LinkList = (struct __ecereNameSpace__ecere__com__LinkList *)(this ? (((char *)this) + 0 + sizeof(struct __ecereNameSpace__ecere__com__Instance)) : 0);
415 return (void *)pointer;
418 unsigned int __ecereMethod___ecereNameSpace__ecere__com__LinkList_SetData(struct __ecereNameSpace__ecere__com__Instance * this, struct __ecereNameSpace__ecere__com__IteratorPointer * pointer, uint64 data)
420 __attribute__((unused)) struct __ecereNameSpace__ecere__com__LinkList * __ecerePointer___ecereNameSpace__ecere__com__LinkList = (struct __ecereNameSpace__ecere__com__LinkList *)(this ? (((char *)this) + 0 + sizeof(struct __ecereNameSpace__ecere__com__Instance)) : 0);
425 struct __ecereNameSpace__ecere__com__IteratorPointer * __ecereMethod___ecereNameSpace__ecere__com__LinkList_Find(struct __ecereNameSpace__ecere__com__Instance * this, uint64 value)
427 __attribute__((unused)) struct __ecereNameSpace__ecere__com__LinkList * __ecerePointer___ecereNameSpace__ecere__com__LinkList = (struct __ecereNameSpace__ecere__com__LinkList *)(this ? (((char *)this) + 0 + sizeof(struct __ecereNameSpace__ecere__com__Instance)) : 0);
429 return (struct __ecereNameSpace__ecere__com__IteratorPointer *)((void *)((uintptr_t)(value)));
432 void * __ecereMethod___ecereNameSpace__ecere__com__LinkList_GetPrev(struct __ecereNameSpace__ecere__com__Instance * this, struct __ecereNameSpace__ecere__com__IteratorPointer * item)
434 __attribute__((unused)) struct __ecereNameSpace__ecere__com__LinkList * __ecerePointer___ecereNameSpace__ecere__com__LinkList = (struct __ecereNameSpace__ecere__com__LinkList *)(this ? (((char *)this) + 0 + sizeof(struct __ecereNameSpace__ecere__com__Instance)) : 0);
436 return ((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)item)) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev)));
439 void * __ecereMethod___ecereNameSpace__ecere__com__LinkList_GetNext(struct __ecereNameSpace__ecere__com__Instance * this, struct __ecereNameSpace__ecere__com__IteratorPointer * item)
441 __attribute__((unused)) struct __ecereNameSpace__ecere__com__LinkList * __ecerePointer___ecereNameSpace__ecere__com__LinkList = (struct __ecereNameSpace__ecere__com__LinkList *)(this ? (((char *)this) + 0 + sizeof(struct __ecereNameSpace__ecere__com__Instance)) : 0);
443 return ((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)item)) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next)));
446 struct __ecereNameSpace__ecere__com__IteratorPointer * __ecereMethod___ecereNameSpace__ecere__com__LinkList_GetAtPosition(struct __ecereNameSpace__ecere__com__Instance * this, const uint64 pos, unsigned int create)
448 __attribute__((unused)) struct __ecereNameSpace__ecere__com__LinkList * __ecerePointer___ecereNameSpace__ecere__com__LinkList = (struct __ecereNameSpace__ecere__com__LinkList *)(this ? (((char *)this) + 0 + sizeof(struct __ecereNameSpace__ecere__com__Instance)) : 0);
452 for(c = 0, item = ((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->first))); c < (int)((const uint64)(pos)) && item; c++, item = ((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next))))
454 return (struct __ecereNameSpace__ecere__com__IteratorPointer *)((void *)((uintptr_t)(item)));
457 struct __ecereNameSpace__ecere__com__IteratorPointer * __ecereMethod___ecereNameSpace__ecere__com__LinkList_Add(struct __ecereNameSpace__ecere__com__Instance * this, uint64 item)
459 __attribute__((unused)) struct __ecereNameSpace__ecere__com__LinkList * __ecerePointer___ecereNameSpace__ecere__com__LinkList = (struct __ecereNameSpace__ecere__com__LinkList *)(this ? (((char *)this) + 0 + sizeof(struct __ecereNameSpace__ecere__com__Instance)) : 0);
463 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev = ((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->last)));
464 if((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev)
465 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next = ((void * )((uintptr_t)(item)));
466 if(!((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->first))))
467 __ecerePointer___ecereNameSpace__ecere__com__LinkList->first = ((void * )((uintptr_t)(item)));
468 __ecerePointer___ecereNameSpace__ecere__com__LinkList->last = ((void * )((uintptr_t)(item)));
469 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next = ((void * )((uintptr_t)((*(unsigned int *)&((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[4]) ? ((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->first))) : (((void *)0)))));
470 if((*(unsigned int *)&((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[4]))
471 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->first)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev = ((void * )((uintptr_t)(item)));
472 __ecerePointer___ecereNameSpace__ecere__com__LinkList->count++;
474 return (struct __ecereNameSpace__ecere__com__IteratorPointer *)((void *)((uintptr_t)(item)));
477 struct __ecereNameSpace__ecere__com__IteratorPointer * __ecereMethod___ecereNameSpace__ecere__com__LinkList_Insert(struct __ecereNameSpace__ecere__com__Instance * this, struct __ecereNameSpace__ecere__com__IteratorPointer * _prevItem, uint64 item)
479 __attribute__((unused)) struct __ecereNameSpace__ecere__com__LinkList * __ecerePointer___ecereNameSpace__ecere__com__LinkList = (struct __ecereNameSpace__ecere__com__LinkList *)(this ? (((char *)this) + 0 + sizeof(struct __ecereNameSpace__ecere__com__Instance)) : 0);
480 void * prevItem = (void *)_prevItem;
482 if(item && prevItem != ((void * )((uintptr_t)(item))))
484 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)(uintptr_t)((uint64)(item))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev = ((void * )((uintptr_t)(prevItem ? ((void * )((uintptr_t)(prevItem))) : (((void * )((uintptr_t)((*(unsigned int *)&((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[4]) ? ((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->last))) : (((void *)0)))))))));
487 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)(uintptr_t)((uint64)(item))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next = ((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(prevItem)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next)));
488 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(prevItem)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next = ((void * )((uintptr_t)(item)));
492 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)(uintptr_t)((uint64)(item))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next = ((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->first)));
493 __ecerePointer___ecereNameSpace__ecere__com__LinkList->first = ((void * )((uintptr_t)(item)));
494 if((*(unsigned int *)&((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[4]))
496 if((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)(uintptr_t)((uint64)(item))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev)
497 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)(uintptr_t)((uint64)(item))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next = ((void * )((uintptr_t)(item)));
499 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)(uintptr_t)((uint64)(item))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next = ((void * )((uintptr_t)(item)));
502 if(((void * )((uintptr_t)(prevItem))) == ((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->last))))
503 __ecerePointer___ecereNameSpace__ecere__com__LinkList->last = ((void * )((uintptr_t)(item)));
504 if((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)(uintptr_t)((uint64)(item))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next)
505 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)(uintptr_t)((uint64)(item))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev = ((void * )((uintptr_t)(item)));
506 __ecerePointer___ecereNameSpace__ecere__com__LinkList->count++;
507 return (struct __ecereNameSpace__ecere__com__IteratorPointer *)((uintptr_t)((uint64)(item)));
509 return (((void *)0));
512 void __ecereMethod___ecereNameSpace__ecere__com__LinkList_Remove(struct __ecereNameSpace__ecere__com__Instance * this, struct __ecereNameSpace__ecere__com__IteratorPointer * _item)
514 __attribute__((unused)) struct __ecereNameSpace__ecere__com__LinkList * __ecerePointer___ecereNameSpace__ecere__com__LinkList = (struct __ecereNameSpace__ecere__com__LinkList *)(this ? (((char *)this) + 0 + sizeof(struct __ecereNameSpace__ecere__com__Instance)) : 0);
515 void * item = (void *)_item;
519 if((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev)
520 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next = ((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next)));
521 if((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next)
522 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev = ((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev)));
523 if((*(unsigned int *)&((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[4]) && ((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->last))) == ((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->first))))
524 __ecerePointer___ecereNameSpace__ecere__com__LinkList->last = __ecerePointer___ecereNameSpace__ecere__com__LinkList->first = (((void *)0));
527 if(((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->last))) == ((void * )((uintptr_t)(item))))
528 __ecerePointer___ecereNameSpace__ecere__com__LinkList->last = ((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev)));
529 if(((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->first))) == ((void * )((uintptr_t)(item))))
530 __ecerePointer___ecereNameSpace__ecere__com__LinkList->first = ((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next)));
532 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev = (((void *)0));
533 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next = (((void *)0));
534 __ecerePointer___ecereNameSpace__ecere__com__LinkList->count--;
538 void __ecereMethod___ecereNameSpace__ecere__com__LinkList_Move(struct __ecereNameSpace__ecere__com__Instance * this, struct __ecereNameSpace__ecere__com__IteratorPointer * _item, struct __ecereNameSpace__ecere__com__IteratorPointer * _prevItem)
540 __attribute__((unused)) struct __ecereNameSpace__ecere__com__LinkList * __ecerePointer___ecereNameSpace__ecere__com__LinkList = (struct __ecereNameSpace__ecere__com__LinkList *)(this ? (((char *)this) + 0 + sizeof(struct __ecereNameSpace__ecere__com__Instance)) : 0);
541 void * item = (void *)_item;
542 void * prevItem = (void *)_prevItem;
546 if(((void * )((uintptr_t)(prevItem))) != ((void * )((uintptr_t)(item))) && (((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->first))) != ((void * )((uintptr_t)(item))) || prevItem))
548 if((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev)
549 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next = ((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next)));
550 if((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next)
551 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev = ((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev)));
552 if(((void * )((uintptr_t)(item))) == ((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->first))))
553 __ecerePointer___ecereNameSpace__ecere__com__LinkList->first = ((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next)));
554 if(((void * )((uintptr_t)(item))) == ((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->last))))
555 __ecerePointer___ecereNameSpace__ecere__com__LinkList->last = ((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev)));
556 if(((void * )((uintptr_t)(prevItem))) == ((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->last))))
557 __ecerePointer___ecereNameSpace__ecere__com__LinkList->last = ((void * )((uintptr_t)(item)));
558 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev = ((void * )((uintptr_t)(prevItem ? ((void * )((uintptr_t)(prevItem))) : (((void * )((uintptr_t)((*(unsigned int *)&((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[4]) ? ((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->last))) : (((void *)0)))))))));
561 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next = ((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(prevItem)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next)));
562 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(prevItem)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next = ((void * )((uintptr_t)(item)));
566 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next = ((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->first)));
567 __ecerePointer___ecereNameSpace__ecere__com__LinkList->first = ((void * )((uintptr_t)(item)));
568 if((*(unsigned int *)&((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[4]))
570 if((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev)
571 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next = ((void * )((uintptr_t)(item)));
573 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next = ((void * )((uintptr_t)(item)));
576 if((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next)
577 (*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void * )((uintptr_t)((*(struct __ecereNameSpace__ecere__com__LinkElement *)(((unsigned char *)((void *)((uintptr_t)(item)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).next)))) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->offset + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].__anon1.__anon2.__anon1.member->_class->offset)).prev = ((void * )((uintptr_t)(item)));
582 void __ecereMethod___ecereNameSpace__ecere__com__LinkList_Free(struct __ecereNameSpace__ecere__com__Instance * this)
584 __attribute__((unused)) struct __ecereNameSpace__ecere__com__LinkList * __ecerePointer___ecereNameSpace__ecere__com__LinkList = (struct __ecereNameSpace__ecere__com__LinkList *)(this ? (((char *)this) + 0 + sizeof(struct __ecereNameSpace__ecere__com__Instance)) : 0);
587 while((item = ((void * )((uintptr_t)(__ecerePointer___ecereNameSpace__ecere__com__LinkList->first)))))
589 ((void (*)(struct __ecereNameSpace__ecere__com__Instance *, struct __ecereNameSpace__ecere__com__IteratorPointer * it))__extension__ ({
590 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
592 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__com__LinkList->_vTbl;
593 })[__ecereVMethodID___ecereNameSpace__ecere__com__Container_Remove])(this, ((void *)((uintptr_t)(item))));
594 (((void (* )(void * _class, void * data))((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[3].__anon1.__anon1.dataTypeClass->_vTbl[__ecereVMethodID_class_OnFree])(((struct __ecereNameSpace__ecere__com__Instance * )(char * )this)->_class->templateArgs[3].__anon1.__anon1.dataTypeClass, ((void * )((uintptr_t)(item)))), item = 0);
598 void __ecereMethod___ecereNameSpace__ecere__com__LinkList_Delete(struct __ecereNameSpace__ecere__com__Instance * this, uint64 item)
600 __attribute__((unused)) struct __ecereNameSpace__ecere__com__LinkList * __ecerePointer___ecereNameSpace__ecere__com__LinkList = (struct __ecereNameSpace__ecere__com__LinkList *)(this ? (((char *)this) + 0 + sizeof(struct __ecereNameSpace__ecere__com__Instance)) : 0);
602 ((void (*)(struct __ecereNameSpace__ecere__com__Instance *, struct __ecereNameSpace__ecere__com__IteratorPointer * it))__extension__ ({
603 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = this;
605 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__com__LinkList->_vTbl;
606 })[__ecereVMethodID___ecereNameSpace__ecere__com__Container_Remove])(this, ((void *)((uintptr_t)(item))));
607 (((void (* )(void * _class, void * data))((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[3].__anon1.__anon1.dataTypeClass->_vTbl[__ecereVMethodID_class_OnFree])(((struct __ecereNameSpace__ecere__com__Instance * )(char * )this)->_class->templateArgs[3].__anon1.__anon1.dataTypeClass, ((void * )((uintptr_t)(item)))), item = 0);
610 void __ecereUnregisterModule_LinkList(struct __ecereNameSpace__ecere__com__Instance * module)
615 void __ecereRegisterModule_LinkList(struct __ecereNameSpace__ecere__com__Instance * module)
617 struct __ecereNameSpace__ecere__com__ClassTemplateArgument __simpleStruct3 =
623 .dataTypeString = "LT::link"
627 struct __ecereNameSpace__ecere__com__DataValue __simpleStruct2 =
634 struct __ecereNameSpace__ecere__com__ClassTemplateArgument __simpleStruct1 =
641 }, .expression = (__simpleStruct2.__anon1.ui64 = 0, __simpleStruct2)
644 struct __ecereNameSpace__ecere__com__ClassTemplateArgument __simpleStruct0 =
650 .dataTypeString = "ecere::com::ListItem"
654 struct __ecereNameSpace__ecere__com__Class __attribute__((unused)) * class;
656 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(1, "ecere::com::LinkElement", 0, sizeof(struct __ecereNameSpace__ecere__com__LinkElement), 0, (void *)0, (void *)0, module, 4, 1);
657 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application && class)
658 __ecereClass___ecereNameSpace__ecere__com__LinkElement = class;
659 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "prev", "T", sizeof(void *), 0xF000F000, 1);
660 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "next", "T", sizeof(void *), 0xF000F000, 1);
661 __ecereNameSpace__ecere__com__eClass_AddTemplateParameter(class, "T", 0, "void *", (((void *)0)));
662 __ecereNameSpace__ecere__com__eClass_DoneAddingTemplateParameters(class);
663 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(5, "ecere::com::ListItem", "ecere::com::IteratorPointer", sizeof(struct __ecereNameSpace__ecere__com__ListItem), 0, (void *)0, (void *)0, module, 4, 1);
664 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application && class)
665 __ecereClass___ecereNameSpace__ecere__com__ListItem = class;
667 struct __ecereNameSpace__ecere__com__DataMember * dataMember0 = __ecereNameSpace__ecere__com__eMember_New(1, 1);
669 __ecereNameSpace__ecere__com__eMember_AddDataMember(dataMember0, "link", "ecere::com::LinkElement<thisclass>", sizeof(struct __ecereNameSpace__ecere__com__LinkElement), 8, 1);
671 struct __ecereNameSpace__ecere__com__DataMember * dataMember1 = __ecereNameSpace__ecere__com__eMember_New(2, 1);
673 __ecereNameSpace__ecere__com__eMember_AddDataMember(dataMember1, "prev", "thisclass", sizeof(void *), 0xF000F000, 1);
674 __ecereNameSpace__ecere__com__eMember_AddDataMember(dataMember1, "next", "thisclass", sizeof(void *), 0xF000F000, 1);
675 __ecereNameSpace__ecere__com__eMember_AddMember(dataMember0, dataMember1);
677 __ecereNameSpace__ecere__com__eClass_AddMember(class, dataMember0);
680 class->fixed = (unsigned int)1;
681 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "ecere::com::LinkList", "ecere::com::Container<LT>", sizeof(struct __ecereNameSpace__ecere__com__LinkList), 0, (void *)0, (void *)0, module, 4, 1);
682 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application && class)
683 __ecereClass___ecereNameSpace__ecere__com__LinkList = class;
684 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "GetFirst", 0, __ecereMethod___ecereNameSpace__ecere__com__LinkList_GetFirst, 1);
685 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "GetLast", 0, __ecereMethod___ecereNameSpace__ecere__com__LinkList_GetLast, 1);
686 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "GetPrev", 0, __ecereMethod___ecereNameSpace__ecere__com__LinkList_GetPrev, 1);
687 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "GetNext", 0, __ecereMethod___ecereNameSpace__ecere__com__LinkList_GetNext, 1);
688 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "GetData", 0, __ecereMethod___ecereNameSpace__ecere__com__LinkList_GetData, 1);
689 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "SetData", 0, __ecereMethod___ecereNameSpace__ecere__com__LinkList_SetData, 1);
690 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "GetAtPosition", 0, __ecereMethod___ecereNameSpace__ecere__com__LinkList_GetAtPosition, 1);
691 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Insert", 0, __ecereMethod___ecereNameSpace__ecere__com__LinkList_Insert, 1);
692 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Add", 0, __ecereMethod___ecereNameSpace__ecere__com__LinkList_Add, 1);
693 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Remove", 0, __ecereMethod___ecereNameSpace__ecere__com__LinkList_Remove, 1);
694 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Move", 0, __ecereMethod___ecereNameSpace__ecere__com__LinkList_Move, 1);
695 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Find", 0, __ecereMethod___ecereNameSpace__ecere__com__LinkList_Find, 1);
696 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Free", 0, __ecereMethod___ecereNameSpace__ecere__com__LinkList_Free, 1);
697 __ecereNameSpace__ecere__com__eClass_AddMethod(class, "Delete", 0, __ecereMethod___ecereNameSpace__ecere__com__LinkList_Delete, 1);
698 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "first", "LT", sizeof(void *), 0xF000F000, 1);
699 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "last", "LT", sizeof(void *), 0xF000F000, 1);
700 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "count", "int", 4, 4, 1);
701 __ecereNameSpace__ecere__com__eClass_AddTemplateParameter(class, "LT", 0, "void *", &__simpleStruct0);
702 __ecereNameSpace__ecere__com__eClass_AddTemplateParameter(class, "circ", 2, "bool", &__simpleStruct1);
703 __ecereNameSpace__ecere__com__eClass_AddTemplateParameter(class, "link", 1, (void *)0, &__simpleStruct3);
704 __ecereNameSpace__ecere__com__eClass_DoneAddingTemplateParameters(class);
706 class->fixed = (unsigned int)1;