// Render an child node, wrapping it in parentheses if necessary public void WrapAndRender(RenderContext dest, ExprNode other, bool bWrapEqualPrecedence) { var precOther = other.GetPrecedence(); var precThis = this.GetPrecedence(); if (precOther < precThis || (precOther == precThis && bWrapEqualPrecedence)) { dest.Append("("); other.Render(dest); dest.Append(")"); } else { other.Render(dest); } }
public override bool Render(RenderContext dest) { dest.Append("("); Inner.Render(dest); dest.Append(")"); return(true); }
public override bool Render(RenderContext dest) { WrapAndRender(dest, Lhs, false); string str = GetIdentifier(); if (str != null) { dest.Append('.'); dest.Append(str); } else { dest.Append("["); Index.Render(dest); dest.Append("]"); } return true; }
// Render an child node, wrapping it in parentheses if necessary public void WrapAndRender(RenderContext dest, ExprNode other, bool bWrapEqualPrecedence) { var precOther=other.GetPrecedence(); var precThis = this.GetPrecedence(); if (precOther < precThis || (precOther==precThis && bWrapEqualPrecedence)) { dest.Append("("); other.Render(dest); dest.Append(")"); } else { other.Render(dest); } }