// this script was compiled with wurst 1.8.1.0-jenkins-Wurst-1365 globals integer array FoldClosure_nextFree integer FoldClosure_firstFree=0 integer FoldClosure_maxIndex=0 integer array LinkedList_nextFree integer LinkedList_firstFree=0 integer LinkedList_maxIndex=0 integer array LinkedList_typeId endglobals function initGlobals takes nothing returns nothing set FoldClosure_firstFree = 0 set FoldClosure_maxIndex = 0 set LinkedList_firstFree = 0 set LinkedList_maxIndex = 0 endfunction function error takes string msg returns nothing call BJDebugMsg(msg + "\n" + "") endfunction function alloc_FoldClosure_foldl_test takes nothing returns integer local integer this if FoldClosure_firstFree == 0 then if FoldClosure_maxIndex < 32768 then set FoldClosure_maxIndex = FoldClosure_maxIndex + 1 set this = FoldClosure_maxIndex else call error("Out of memory: Could not create FoldClosure_foldl_test.") set this = 0 endif else set FoldClosure_firstFree = FoldClosure_firstFree - 1 set this = FoldClosure_nextFree[FoldClosure_firstFree] endif return this endfunction function LinkedList_foldl takes integer this, integer startValue, integer predicate returns integer return 0 endfunction function dispatch_LinkedList_test_LinkedList_foldl takes integer this, integer startValue, integer predicate returns integer local integer test_LinkedList_foldl_result if LinkedList_typeId[this] == 0 then if this == 0 then call error("Nullpointer exception when calling LinkedList.foldl") else call error("Called LinkedList.foldl on invalid object.") endif endif set test_LinkedList_foldl_result = LinkedList_foldl(this, startValue, predicate) return test_LinkedList_foldl_result endfunction function alloc_LinkedList takes nothing returns integer local integer this if LinkedList_firstFree == 0 then if LinkedList_maxIndex < 32768 then set LinkedList_maxIndex = LinkedList_maxIndex + 1 set this = LinkedList_maxIndex set LinkedList_typeId[this] = 3 else call error("Out of memory: Could not create LinkedList.") set this = 0 endif else set LinkedList_firstFree = LinkedList_firstFree - 1 set this = LinkedList_nextFree[LinkedList_firstFree] set LinkedList_typeId[this] = 3 endif return this endfunction function LinkedList_init takes integer this returns nothing endfunction function construct_LinkedList takes integer this returns nothing call LinkedList_init(this) endfunction function new_LinkedList takes nothing returns integer local integer this = alloc_LinkedList() call construct_LinkedList(this) return this endfunction function init_test takes nothing returns nothing local integer x = new_LinkedList() local integer temp = x local integer clVar = alloc_FoldClosure_foldl_test() call dispatch_LinkedList_test_LinkedList_foldl(temp, 0, clVar) endfunction function main takes nothing returns nothing call initGlobals() call init_test() endfunction function config takes nothing returns nothing endfunction