private static ExpressionTreeBase ExtractItem(ExpressionTreeBase item, out JoiningType?type, out bool negate, out ConditionalExpression lastParent) { lastParent = null; type = GetJoiningType(item); if (item is ConditionalExpression && !(item is NotCondition)) { lastParent = (ConditionalExpression)item; item = ((ConditionalExpression)item).Child; } if (item is NotCondition) { negate = true; item = ((NotCondition)item).Child; } else { negate = false; } return(item); }
void Operation(out ConditionalExpression expression) { expression = null; if (la.kind == 13) { Get(); expression = new AndCondition(); } else if (la.kind == 14) { Get(); expression = new OrCondition(); } else SynErr(55); }
public void AddCondition(ConditionalExpression condition) { _additionalConditions.Add(condition); condition.SetParent(this); }