Add call operand
This commit is contained in:
@@ -30,7 +30,7 @@ namespace Interpret
|
||||
void (* function)(Execute::State & state, int argument1, int argument2);
|
||||
Value firstArgument;
|
||||
Value secondArgument;
|
||||
|
||||
|
||||
void Execute(Execute::Flags & flags, Execute::State & state, Execute::Registers & registers) override;
|
||||
};
|
||||
|
||||
@@ -40,7 +40,7 @@ namespace Interpret
|
||||
Value firstArgument;
|
||||
Value secondArgument;
|
||||
Value thirdArgument;
|
||||
|
||||
|
||||
void Execute(Execute::Flags & flags, Execute::State & state, Execute::Registers & registers) override;
|
||||
};
|
||||
|
||||
@@ -55,6 +55,17 @@ namespace Interpret
|
||||
JumpStatement(std::string const & label);
|
||||
};
|
||||
|
||||
struct FunctionCallStatement : Statement
|
||||
{
|
||||
private:
|
||||
std::string const label;
|
||||
|
||||
public:
|
||||
void Execute(Execute::Flags & flags, Execute::State & state, Execute::Registers & registers) override;
|
||||
|
||||
FunctionCallStatement(std::string const & label);
|
||||
};
|
||||
|
||||
struct SetStatement : Statement
|
||||
{
|
||||
Value firstArgument;
|
||||
|
||||
Reference in New Issue
Block a user