22 #ifndef DIRECTOR_LINGO_LINGO_CODE_H 23 #define DIRECTOR_LINGO_LINGO_CODE_H 31 Datum mapBinaryOp(Datum (*func)(Datum &, Datum &), Datum &d1, Datum &d2);
32 Datum addData(Datum &d1, Datum &d2);
34 Datum subData(Datum &d1, Datum &d2);
36 Datum mulData(Datum &d1, Datum &d2);
38 Datum divData(Datum &d1, Datum &d2);
40 Datum modData(Datum &d1, Datum &d2);
42 Datum negateData(Datum &d1);
58 Datum chunkRef(ChunkType type,
int startChunk,
int endChunk,
const Datum &src);
59 Datum lastChunk(ChunkType type,
const Datum &src);
60 Datum readChunkRef(
const Datum &src);
79 void c_globalrefpush();
80 void c_localrefpush();
88 void c_argcnoretpush();
90 void c_proparraypush();
94 bool verify(
const Symbol &s);
98 void c_theentitypush();
99 void c_themenuentitypush();
100 void c_theentityassign();
101 void c_objectproppush();
102 void c_objectpropassign();
107 Datum compareArrays(Datum (*compareFunc)(Datum, Datum), Datum d1, Datum d2,
bool location =
false,
bool value =
false);
108 Datum eqData(Datum d1, Datum d2);
109 Datum eqDataStrict(Datum d1, Datum d2);
111 Datum neqData(Datum d1, Datum d2);
113 Datum gtData(Datum d1, Datum d2);
115 Datum ltData(Datum d1, Datum d2);
117 Datum geData(Datum d1, Datum d2);
119 Datum leData(Datum d1, Datum d2);
126 void call(
const Symbol &targetSym,
int nargs,
bool allowRetVal);
127 void call(
const Common::String &name,
int nargs,
bool allowRetVal);
142 void c_asserterror();
143 void c_asserterrordone();
154 void cb_globalassign();
155 void cb_globalpush();
158 void cb_objectcall();
159 void cb_objectfieldassign();
160 void cb_objectfieldpush();
161 void cb_varrefpush();
163 void cb_theassign2();
171 void cb_v4theentitypush();
172 void cb_v4theentitynamepush();
173 void cb_v4theentityassign();