public override void Execute(AbstractMachineState state)
{
AMProgram prog = (AMProgram)state.Program;
runtime = state;
// invoke(+ClassObj,+meth(+x..),-Return).
AbstractTerm X0 = ((AbstractTerm)state["X0"]).Dereference();
AbstractTerm X1 = ((AbstractTerm)state["X1"]).Dereference();
AbstractTerm X2 = ((AbstractTerm)state["X2"]).Dereference();
if (InvokeMethod(X0, X1, X2, state))
{
prog.Next();
}
else
{
state.Backtrack();
}
}