// this script was compiled with wurst 1.8.1.0-jenkins-Wurst-1367 globals integer array Iterator_nextFree integer Iterator_firstFree=0 integer Iterator_maxIndex=0 integer array Iterator_typeId integer array List_nextFree integer List_firstFree=0 integer List_maxIndex=0 integer array List_typeId integer wurst_stack_depth=0 string array wurst_stack endglobals native testSuccess takes nothing returns nothing function initGlobals takes nothing returns nothing endfunction function error takes string msg, string w__wurst_stackPos returns nothing local integer stacktraceIndex local integer stacktraceLimit set wurst_stack[wurst_stack_depth] = w__wurst_stackPos set wurst_stack_depth = wurst_stack_depth + 1 set w__wurst_stackPos = "" set stacktraceIndex = wurst_stack_depth set stacktraceLimit = 0 loop set stacktraceIndex = stacktraceIndex - 1 set stacktraceLimit = stacktraceLimit + 1 exitwhen stacktraceLimit > 20 or stacktraceIndex < 0 set w__wurst_stackPos = w__wurst_stackPos + "\n " + wurst_stack[stacktraceIndex] endloop call BJDebugMsg(msg + "\n" + w__wurst_stackPos) set wurst_stack_depth = wurst_stack_depth - 1 endfunction function new_Iterator takes integer t, string w__wurst_stackPos returns integer set wurst_stack[wurst_stack_depth] = w__wurst_stackPos set wurst_stack_depth = wurst_stack_depth + 1 set wurst_stack[wurst_stack_depth] = "when calling alloc_Iterator in function, line 8" set wurst_stack_depth = wurst_stack_depth + 1 if Iterator_firstFree == 0 then if Iterator_maxIndex < 32768 then set Iterator_maxIndex = Iterator_maxIndex + 1 set t = Iterator_maxIndex set Iterator_typeId[t] = 4 else call error("Out of memory: Could not create Iterator.", "when calling error in function, line 6") set t = 0 endif else set Iterator_firstFree = Iterator_firstFree - 1 set t = Iterator_nextFree[Iterator_firstFree] set Iterator_typeId[t] = 4 endif set wurst_stack_depth = wurst_stack_depth - 1 - 1 return t endfunction function new_List takes string w__wurst_stackPos returns integer local integer this set wurst_stack[wurst_stack_depth] = w__wurst_stackPos set wurst_stack_depth = wurst_stack_depth + 1 set wurst_stack[wurst_stack_depth] = "when calling alloc_List in function, line 3" set wurst_stack_depth = wurst_stack_depth + 1 if List_firstFree == 0 then if List_maxIndex < 32768 then set List_maxIndex = List_maxIndex + 1 set this = List_maxIndex set List_typeId[this] = 5 else call error("Out of memory: Could not create List.", "when calling error in function, line 3") set this = 0 endif else set List_firstFree = List_firstFree - 1 set this = List_nextFree[List_firstFree] set List_typeId[this] = 5 endif set wurst_stack_depth = wurst_stack_depth - 1 - 1 return this endfunction function init_test takes string w__wurst_stackPos returns nothing local integer a set wurst_stack[wurst_stack_depth] = w__wurst_stackPos set wurst_stack_depth = wurst_stack_depth + 1 set a = new_List("when calling new_List in function, line 18") set wurst_stack[wurst_stack_depth] = "when calling iterator in function, line 19" set wurst_stack_depth = wurst_stack_depth + 1 if List_typeId[a] == 0 then if a == 0 then call error("Nullpointer exception when calling List.iterator", "when calling error in function, line 4") else call error("Called List.iterator on invalid object.", "when calling error in function, line 4") endif endif set wurst_stack[wurst_stack_depth] = "when calling iterator in function, line 4" set wurst_stack_depth = wurst_stack_depth + 1 set a = new_Iterator(a, "when calling new_Iterator in function, line 5") set wurst_stack_depth = wurst_stack_depth - 1 - 1 loop set wurst_stack[wurst_stack_depth] = "when calling hasNext in function, line 20" set wurst_stack_depth = wurst_stack_depth + 1 if Iterator_typeId[a] == 0 then if a == 0 then call error("Nullpointer exception when calling Iterator.hasNext", "when calling error in function, line 10") else call error("Called Iterator.hasNext on invalid object.", "when calling error in function, line 10") endif endif set wurst_stack_depth = wurst_stack_depth - 1 set wurst_stack[wurst_stack_depth] = "when calling next in function, line 21" set wurst_stack_depth = wurst_stack_depth + 1 if Iterator_typeId[a] == 0 then if a == 0 then call error("Nullpointer exception when calling Iterator.next", "when calling error in function, line 12") else call error("Called Iterator.next on invalid object.", "when calling error in function, line 12") endif endif set wurst_stack_depth = wurst_stack_depth - 1 call testSuccess() endloop set wurst_stack_depth = wurst_stack_depth - 1 endfunction function main takes nothing returns nothing call initGlobals() call init_test("when calling init_test in function, line 1") endfunction function config takes nothing returns nothing endfunction