BytecodeRules
public static Func<AbstractSyntaxTree, List<Instruction>> PushNumber()
Language: C#
Правило для числовых литералов: генерирует PUSH значения
public static Func<AbstractSyntaxTree, List<Instruction>> BinaryOp(OpCode opCode)
Language: C#
Правило для бинарной операции: дети уже на стеке, применяем оператор
public static Func<AbstractSyntaxTree, List<Instruction>> UnaryOp(OpCode opCode)
Language: C#
Правило для унарной операции
public static Func<AbstractSyntaxTree, List<Instruction>> LoadVariable()
Language: C#
Правило для загрузки переменной
public static Func<AbstractSyntaxTree, List<Instruction>> StoreVariable()
Language: C#
Правило для сохранения переменной