ShellSyntaxWalker Class

Visits a shell node and everything below it.

public class ShellSyntaxWalker : ShellSyntaxVisitor

Example

private sealed class SimpleCommandCounter : ShellSyntaxWalker
{
    public int Count { get; private set; }

    public override void VisitCommand(ShellCommandSyntax node)
    {
        Count++;
        base.VisitCommand(node);
    }
}
Inheritance
ShellSyntaxVisitor ShellSyntaxWalker

Constructors

NameDescription
ShellSyntaxWalker(SyntaxWalkerDepth)

ShellSyntaxWalker(SyntaxWalkerDepth)

ShellSyntaxWalker.cs
public ShellSyntaxWalker(SyntaxWalkerDepth depth = (SyntaxWalkerDepth)0)

Parameters

depth SyntaxWalkerDepth

No documentation is available.

Properties

NameDescription
DepthGets how far down this walker goes.

Gets how far down this walker goes.

protected SyntaxWalkerDepth Depth { get; }

Property value

SyntaxWalkerDepth

Methods

NameDescription
DefaultVisit(ShellSyntaxNode)
VisitToken(SyntaxToken)
VisitTrivia(SyntaxTrivia)

DefaultVisit(ShellSyntaxNode)

ShellSyntaxWalker.cs
public override void DefaultVisit(ShellSyntaxNode node)

Parameters

node ShellSyntaxNode

Exceptions

InsufficientExecutionStackException
The script is nested too deeply to walk.

VisitToken(SyntaxToken)

ShellSyntaxWalker.cs
public virtual void VisitToken(SyntaxToken token)

Parameters

token SyntaxToken

No documentation is available.

VisitTrivia(SyntaxTrivia)

ShellSyntaxWalker.cs
public virtual void VisitTrivia(SyntaxTrivia trivia)

Parameters

trivia SyntaxTrivia

No documentation is available.