protected override Symbol Evaluate(ValueSymbol a, ValueSymbol b) { return(new NumberSymbol(Math.Pow(a.Value, b.Value))); }
protected override Symbol Evaluate(ValueSymbol a, ValueSymbol b) { return(new NumberSymbol((int)a.Value >> (int)b.Value)); }
protected virtual Symbol Evaluate(ValueSymbol a, ValueSymbol b) { return(new NumberSymbol(0)); }
protected override Symbol Evaluate(ValueSymbol a, ValueSymbol b) { return(new NumberSymbol(a.Value - b.Value)); }
protected override Symbol Evaluate(ValueSymbol a, ValueSymbol b) { return new NumberSymbol((int)a.Value << (int)b.Value); }
protected override Symbol Evaluate(ValueSymbol a, ValueSymbol b) { return new NumberSymbol(a.Value / b.Value); }
protected override Symbol Evaluate(ValueSymbol a, ValueSymbol b) { return new NumberSymbol(Math.Pow(a.Value, b.Value)); }
protected virtual Symbol Evaluate(ValueSymbol a, ValueSymbol b) { return new NumberSymbol(0); }