Skip to content

Commit fb104f3

Browse files
[[ RefactorSyntax ]] Initial changes to allow EP removal from evalution shims.
1 parent 7dcbce9 commit fb104f3

41 files changed

Lines changed: 261 additions & 53 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

engine/src/chunk.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ along with LiveCode. If not see <http://www.gnu.org/licenses/>. */
4646
#include "mcerror.h"
4747
#include "util.h"
4848
#include "debug.h"
49+
#include "variable.h"
4950

5051
#include "globals.h"
5152

engine/src/cmds.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -933,7 +933,8 @@ class MCBeep : public MCStatement
933933
}
934934
virtual ~MCBeep();
935935
virtual Parse_stat parse(MCScriptPoint &);
936-
virtual Exec_stat exec(MCExecPoint &);
936+
virtual void exec_ctxt(MCExecContext& ctxt);
937+
937938
virtual void compile(MCSyntaxFactoryRef);
938939
};
939940

engine/src/cmdse.cpp

Lines changed: 6 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ Parse_stat MCBeep::parse(MCScriptPoint &sp)
203203
return PS_NORMAL;
204204
}
205205

206-
Exec_stat MCBeep::exec(MCExecPoint &ep)
206+
void MCBeep::exec_ctxt(MCExecContext& ctxt)
207207
{
208208
#ifdef /* MCBeep */ LEGACY_EXEC
209209
uint4 i = 1;
@@ -234,24 +234,11 @@ uint4 i = 1;
234234
return ES_NORMAL;
235235
#endif /* MCBeep */
236236

237-
238-
uint4 i = 1;
239-
if (times != NULL)
240-
{
241-
if (times->eval(ep) != ES_NORMAL || ep.ton() != ES_NORMAL)
242-
{
243-
MCeerror->add(EE_BEEP_BADEXP, line, pos);
244-
return ES_ERROR;
245-
}
246-
i = ep.getuint4();
247-
}
248-
249-
MCExecContext ctxt(ep);
250-
MCInterfaceExecBeep(ctxt, i);
251-
if (!ctxt . HasError())
252-
return ES_NORMAL;
253-
254-
return ctxt . Catch(line, pos);
237+
uinteger_t t_count;
238+
if (!ctxt . EvalOptionalExprAsUInt(times, 1, EE_BEEP_BADEXP, t_count))
239+
return;
240+
241+
MCInterfaceExecBeep(ctxt, t_count);
255242
}
256243

257244
void MCBeep::compile(MCSyntaxFactoryRef ctxt)

engine/src/cmdsf.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ along with LiveCode. If not see <http://www.gnu.org/licenses/>. */
5555

5656
#include "iquantization.h"
5757
#include "syntax.h"
58+
#include "variable.h"
5859

5960
#include "exec-interface.h"
6061

engine/src/cmdsm.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ along with LiveCode. If not see <http://www.gnu.org/licenses/>. */
3131
#include "osspec.h"
3232
#include "exec.h"
3333
#include "syntax.h"
34+
#include "variable.h"
3435

3536
#include <float.h>
3637

engine/src/cmdss.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ along with LiveCode. If not see <http://www.gnu.org/licenses/>. */
4646
#include "redraw.h"
4747
#include "exec.h"
4848
#include "syntax.h"
49+
#include "variable.h"
4950

5051
MCCompact::~MCCompact()
5152
{

engine/src/edittool.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ along with LiveCode. If not see <http://www.gnu.org/licenses/>. */
3131

3232
#include "path.h"
3333
#include "context.h"
34-
34+
#include "variable.h"
3535
#include "meta.h"
3636

3737

engine/src/exec-array.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ along with LiveCode. If not see <http://www.gnu.org/licenses/>. */
2525
#include "globals.h"
2626
#include "objectstream.h"
2727
#include "util.h"
28+
#include "variable.h"
2829

2930
#include "exec.h"
3031

engine/src/exec-dialog.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ along with LiveCode. If not see <http://www.gnu.org/licenses/>. */
2626
#include "field.h"
2727
#include "stack.h"
2828
#include "card.h"
29+
#include "variable.h"
2930

3031
#include "exec.h"
3132
#include "debug.h"

engine/src/exec-interface.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ along with LiveCode. If not see <http://www.gnu.org/licenses/>. */
4747
#include "aclip.h"
4848
#include "vclip.h"
4949
#include "osspec.h"
50+
#include "variable.h"
5051

5152
#include "debug.h"
5253
#include "card.h"

0 commit comments

Comments
 (0)