| File: Language\Syntax\InternalSyntax\SyntaxVisitor.cs | Web Access |
| Project: src\roslyn\src\Razor\src\Compiler\Microsoft.CodeAnalysis.Razor.Compiler\src\Microsoft.CodeAnalysis.Razor.Compiler.csproj (Microsoft.CodeAnalysis.Razor.Compiler) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. #nullable disable namespace Microsoft.AspNetCore.Razor.Language.Syntax.InternalSyntax; internal abstract partial class SyntaxVisitor<TResult> { public virtual TResult Visit(GreenNode node) { if (node == null) { return default(TResult); } return node.Accept(this); } public virtual TResult VisitToken(SyntaxToken token) { return DefaultVisit(token); } protected virtual TResult DefaultVisit(GreenNode node) { return default(TResult); } } internal abstract partial class SyntaxVisitor { public virtual GreenNode Visit(GreenNode node) { if (node != null) { node.Accept(this); } return null; } public virtual void VisitToken(SyntaxToken token) { DefaultVisit(token); } protected virtual void DefaultVisit(GreenNode node) { } }