aboutsummaryrefslogtreecommitdiff
path: root/engines/director/lingo/lingo.h
diff options
context:
space:
mode:
authorEugene Sandulenko2016-07-04 18:56:11 +0200
committerEugene Sandulenko2016-08-03 23:40:36 +0200
commit78555a4d3f77a5e604675416d2d700059faafe9f (patch)
treecf27ed7b2021c8504636cee9c70a1fe18880aeb7 /engines/director/lingo/lingo.h
parent22baf62312a94f272f8780697853140ae3b30434 (diff)
downloadscummvm-rg350-78555a4d3f77a5e604675416d2d700059faafe9f.tar.gz
scummvm-rg350-78555a4d3f77a5e604675416d2d700059faafe9f.tar.bz2
scummvm-rg350-78555a4d3f77a5e604675416d2d700059faafe9f.zip
DIRECTOR: Lingo: Stub for labelstack
Diffstat (limited to 'engines/director/lingo/lingo.h')
-rw-r--r--engines/director/lingo/lingo.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/engines/director/lingo/lingo.h b/engines/director/lingo/lingo.h
index 8885b7f539..8300800806 100644
--- a/engines/director/lingo/lingo.h
+++ b/engines/director/lingo/lingo.h
@@ -145,6 +145,7 @@ public:
Symbol *lookupVar(const char *name, bool create = true, bool putInGlobalList = false);
void cleanLocalVars();
void define(Common::String &s, int start, int nargs);
+ void processIf(int endLabel);
int alignTypes(Datum &d1, Datum &d2);
@@ -152,6 +153,7 @@ public:
int code2(inst code_1, inst code_2) { int o = code1(code_1); code1(code_2); return o; }
int code3(inst code_1, inst code_2, inst code_3) { int o = code1(code_1); code1(code_2); code1(code_3); return o; }
int codeString(const char *s);
+ void codeLabel(int label);
int calcStringAlignment(const char *s) {
return calcCodeAlignment(strlen(s) + 1);
@@ -236,6 +238,7 @@ public:
Common::Array<CFrame *> _callstack;
Common::Array<Common::String *> _argstack;
BuiltinHash _builtins;
+ Common::Array<int> _labelstack;
private:
int parse(const char *code);