private bool AutoPrintBracesOrBracks(ILNode node, Precedence context) { var name = node.Name; if (name == S.Array && node.IsCall() && !HasPAttrs(node.Target)) { PrintArgList(node.Args(), node.BaseStyle() == NodeStyle.StatementBlock, "[", ']', null, node.Target); return(true); } else if (name == S.Tuple && node.ArgCount() != 1 && node.IsCall() && !HasPAttrs(node.Target)) { PrintArgList(node.Args(), node.BaseStyle() == NodeStyle.StatementBlock, "(", ')', "; ", node.Target); return(true); } else if (name == S.Braces && node.IsCall() && !HasPAttrs(node.Target)) { if (context.Lo == StartStmt.Lo) { _out.Dedent(PrinterIndentHint.Subexpression).Indent(PrinterIndentHint.NoIndent); } PrintArgList(node.Args(), node.BaseStyle() != NodeStyle.Expression, "{", '}', null, node.Target); return(true); } return(false); }
private bool AutoPrintBracesOrBracks(ILNode node) { var name = node.Name; if ((name == S.Array || name == S.Braces) && node.IsCall() && !HasPAttrs(node.Target)) { if (name == S.Array) { PrintArgList(node.Args(), node.BaseStyle() == NodeStyle.Statement, "[", ']', node.Target); return(true); } else if (name == S.Braces) { PrintArgList(node.Args(), node.BaseStyle() != NodeStyle.Expression, "{", '}', node.Target); return(true); } } return(false); }
void PrintPrefixNotation(ILNode node, Precedence context) { switch (node.Kind) { case LNodeKind.Id: PrintIdOrSymbol(node.Name, false); break; case LNodeKind.Literal: PrintLiteral(node); break; case LNodeKind.Call: default: Print(node.Target, LesPrecedence.Primary.LeftContext(context), "("); PrintArgList(node.Args(), node.BaseStyle() == NodeStyle.Statement, "", ')', null); break; } }