public static bool NeedsParens(AstNode expression, bool outerHasNoArguments) { var visitor = new NewParensVisitor(outerHasNoArguments); expression.Accept(visitor); return(visitor.m_needsParens); }
public static void Apply(AstNode node) { if (node != null) { node.Accept(s_instance); } }
/// <summary> /// For the given binding node, return a collection of individual lookup /// nodes that represent the names being referenced. /// </summary> /// <param name="node">binding node</param> /// <returns>collection of Lookup nodes</returns> public static IList <Lookup> References(AstNode node) { var visitor = new BindingsVisitor(); if (node != null) { node.Accept(visitor); } return(visitor.m_lookups); }
/// <summary> /// For the given binding node, return a collection of individual INameDeclaration /// nodes that represent the names being declared for this binding element. /// </summary> /// <param name="node">binding node</param> /// <returns>collection of INameDeclaration nodes</returns> public static IList <BindingIdentifier> Bindings(AstNode node) { var visitor = new BindingsVisitor(); if (node != null) { node.Accept(visitor); } return(visitor.m_bindings); }
public static bool Apply(TextWriter writer, AstNode node, CodeSettings settings) { if (node != null) { var visitor = new JSONOutputVisitor(writer, settings); node.Accept(visitor); return(visitor.IsValid); } return(false); }
public bool IsSafe(AstNode node) { // assume it is unless preven otherwise m_isSafe = true; if (node != null) { node.Accept(this); } return(m_isSafe); }
public bool Query(AstNode node) { // requires by default unless a node explicitly says it doesn't need one DoesRequire = node != null; if (node != null) { node.Accept(this); } return(DoesRequire); }