22 #ifndef MEDIASTATION_MEDIASCRIPT_CODECHUNK_H 23 #define MEDIASTATION_MEDIASCRIPT_CODECHUNK_H 25 #include "common/array.h" 27 #include "mediastation/datafile.h" 28 #include "mediastation/mediascript/scriptvalue.h" 29 #include "mediastation/mediascript/scriptconstants.h" 44 static const uint MAX_CALL_DEPTH = 0x0f;
49 ScriptValue evaluateExpression(ExpressionType expressionType);
58 void evaluateIfElse();
62 ScriptValue evaluateFunctionCall(
bool isIndirect =
false);
63 ScriptValue evaluateFunctionCall(uint functionId, uint paramCount);
64 ScriptValue evaluateMethodCall(
bool isIndirect =
false);
65 ScriptValue evaluateMethodCall(BuiltInMethod method, uint paramCount);
66 void evaluateDeclareLocals();
67 void evaluateReturn();
68 void evaluateReturnNoValue();
69 void evaluateWhileLoop();
71 static const uint MAX_LOOP_ITERATION_COUNT = 1000;
72 bool _returnImmediately =
false;
79 uint _debugIndentLevel = 0;