--- linuxsampler/trunk/src/scriptvm/common.h 2014/06/11 11:39:44 2618 +++ linuxsampler/trunk/src/scriptvm/common.h 2014/06/11 13:24:32 2619 @@ -50,12 +50,15 @@ class VMIntExpr; class VMStringExpr; + class VMIntArrayExpr; + class VMStringArrayExpr; class VMExpr { public: virtual ExprType_t exprType() const = 0; VMIntExpr* asInt() const; VMStringExpr* asString() const; + VMIntArrayExpr* asIntArray() const; }; class VMIntExpr : virtual public VMExpr { @@ -70,6 +73,17 @@ ExprType_t exprType() const { return STRING_EXPR; } }; + class VMArrayExpr : virtual public VMExpr { + public: + virtual int arraySize() const = 0; + }; + + class VMIntArrayExpr : virtual public VMArrayExpr { + public: + virtual int evalIntElement(uint i) = 0; + virtual void assignIntElement(uint i, int value) = 0; + }; + class VMFnArgs { public: virtual int argsCount() const = 0;