protected bool ValidCompare(ExpressionValue expressionValue, ExpressionOperator op) { return(ExpressionOperators.Comparison.Contains(op) && CompatibleOperators.Contains(op)); }
protected bool ValidCombine(ExpressionValue expressionValue, ExpressionOperator op) { return(CompatibleTypes.Contains(expressionValue.ExpressionType) && CompatibleOperators.Contains(op)); }
public abstract ExpressionValue Combine(ExpressionValue expressionValue, ExpressionOperator op);
public abstract TypedExpressionValue <bool> Compare(ExpressionValue expressionValue, ExpressionOperator op);
/// <summary> /// Combines the dependend widgetIDs /// </summary> /// <param name="expressionValue">Expression to combine with</param> /// <returns>Combined widgetIDs</returns> protected string[] CombineWidgets(ExpressionValue expressionValue) { // Create a list of unique widgetIDs return(UsedWidgetIDs.Concat(expressionValue.UsedWidgetIDs).Distinct().ToArray()); }