while(node = ((struct __ecereNameSpace__ecere__com__MapNode *)((struct __ecereNameSpace__ecere__com__CustomAVLTree *)(((char *)this + 12)))->root))
{
-(((void (* )(void * _class, void * data))((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[6].dataTypeClass->_vTbl[__ecereVMethodID_class_OnFree])(((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[6].dataTypeClass, __ecereProp___ecereNameSpace__ecere__com__MapNode_Get_value(node)), __ecereProp___ecereNameSpace__ecere__com__MapNode_Set_value(node, 0));
+struct __ecereNameSpace__ecere__com__MapNode * n = node;
+
+if(((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].dataTypeClass->type == 1)
+n = (struct __ecereNameSpace__ecere__com__MapNode *)(((unsigned char *)node) + ((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[5].dataTypeClass->structSize - sizeof node->key);
+(((void (* )(void * _class, void * data))((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[6].dataTypeClass->_vTbl[__ecereVMethodID_class_OnFree])(((struct __ecereNameSpace__ecere__com__Instance *)(char *)this)->_class->templateArgs[6].dataTypeClass, __ecereProp___ecereNameSpace__ecere__com__MapNode_Get_value(n)), __ecereProp___ecereNameSpace__ecere__com__MapNode_Set_value(n, 0));
((void (*)(struct __ecereNameSpace__ecere__com__Instance *, struct __ecereNameSpace__ecere__com__IteratorPointer * it))this->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__com__Container_Remove])(this, node);
}
}
"ModuleName" : "documentor",
"Options" : {
"TargetFileName" : "documentor",
- "TargetDirectory" : "obj/$(CONFIG).$(PLATFORM)",
- "ObjectsDirectory" : "obj/$(CONFIG).$(PLATFORM)",
"Libraries" : [
"ecere"
]
}
]
},
- "../extract/obj/release.$(PLATFORM)/extract$(E)"
+ "../extract/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)/extract$(E)"
]
}
"Warnings" : "All",
"TargetType" : "Executable",
"TargetFileName" : "extract",
- "TargetDirectory" : "obj/$(CONFIG).$(PLATFORM)",
- "ObjectsDirectory" : "obj/$(CONFIG).$(PLATFORM)",
"LibraryDirs" : [
- "../../ecere/obj/vanilla.$(PLATFORM)",
- "../../deps/zlib/obj/release.$(PLATFORM)"
+ "../../ecere/obj/vanilla.$(PLATFORM)$(COMPILER_SUFFIX)",
+ "../../deps/zlib/obj/release.$(PLATFORM)$(COMPILER_SUFFIX)"
]
},
"Platforms" : [
MapNode<MT, V> node;
while(node = root)
{
- delete node.value;
+ MapNode<MT, V> n = node;
+
+ // Adjust node pointer for non-standard AVLNode
+ if(class(MT).type == structClass)
+ n = (MapNode<MT, V>)(((byte *) node) + class(MT).structSize - sizeof(node.AVLNode::key));
+
+ delete n.value;
Remove(node);
}
}
],
"Console" : true,
"FastMath" : false
- },
- "Platforms" : [
- {
- "Name" : "Win32",
- "Options" : {
- "Libraries" : [
-
- ]
- }
- }
- ]
+ }
},
{
"Name" : "Release",
},
"Platforms" : [
{
- "Name" : "Win32",
- "Options" : {
- "Libraries" : [
-
- ]
- }
- },
- {
"Name" : "linux",
"Options" : {
"Libraries" : [
],
"Console" : true,
"FastMath" : false
- },
- "Platforms" : [
- {
- "Name" : "Win32",
- "Options" : {
- "Libraries" : [
-
- ]
- }
- }
- ]
+ }
},
{
"Name" : "Profile",