private static EvaluationResult Result(object value) { return(EvaluationResult.Result(value)); }
private static EvaluationResult Error(string message) { return(EvaluationResult.Error(message)); }
public override EvaluationResult ComparisonOperator(EvaluationResult value, EvaluationResult other) { return(Error("Boolean values can only be compared to other boolean values")); }
private EvaluationResult EvaluateLogicalOr(EvaluationResult left, EvaluationResult right) { var type = PrimitiveType.InstanceFor(left.Value); return(type.LogicalOr(left, right)); }
protected EvaluationResult Result(object value) { return(EvaluationResult.Result(value)); }
protected EvaluationResult Error(string message) { return(EvaluationResult.Error(message)); }
public abstract EvaluationResult ComparisonOperator(EvaluationResult value, EvaluationResult other);
public abstract EvaluationResult LogicalOr(EvaluationResult value, EvaluationResult other);
public override EvaluationResult LogicalOr(EvaluationResult value, EvaluationResult other) { return(value); }
public abstract EvaluationResult EqualityOperator(EvaluationResult value, EvaluationResult other);
public override EvaluationResult ComparisonOperator(EvaluationResult value, EvaluationResult other) { return(value); }
public override EvaluationResult EqualityOperator(EvaluationResult value, EvaluationResult other) { return(value); }
public override EvaluationResult ComparisonOperator(EvaluationResult value, EvaluationResult other) { return(Error("'null' values can not be compared")); }
public override EvaluationResult EqualityOperator(EvaluationResult value, EvaluationResult other) { return(Result(value.IsNull && other.IsNull)); }
public override EvaluationResult LogicalAnd(EvaluationResult value, EvaluationResult other) { return(other); }