protected override BaseValue Execute(BaseValue first, BaseValue second) { if (first is NumberValue && second is NumberValue) { return(new NumberValue(first.ToNumber() + second.ToNumber())); } return(StringValue.Create(first.ToString() + second.ToString())); }
protected override BaseValue Execute(BaseValue first, BaseValue second) { decimal divisor = second.ToNumber(); if (divisor == 0) { divisor = 1; } return(new NumberValue(first.ToNumber() / divisor)); }
protected override BaseValue Execute(BaseValue first, BaseValue second) => new BooleanValue(first.ToNumber() >= second.ToNumber());
protected override BaseValue Execute(BaseValue value) => new NumberValue(-value.ToNumber());
protected override BaseValue Execute(BaseValue first, BaseValue second) => new NumberValue(first.ToNumber() * second.ToNumber());