| File: Syntax\ICompilationUnitSyntax.cs | Web Access |
| Project: src\roslyn\src\Compilers\Core\Portable\Microsoft.CodeAnalysis.csproj (Microsoft.CodeAnalysis) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. using Microsoft.CodeAnalysis.Text; namespace Microsoft.CodeAnalysis { /// <summary> /// Interface implemented by any node that is the root 'CompilationUnit' of a <see cref="SyntaxTree"/>. i.e. /// any node returned by <see cref="SyntaxTree.GetRoot"/> where <see cref="SyntaxTree.HasCompilationUnitRoot"/> /// is <see langword="true"/> will implement this interface. /// /// This interface provides a common way to both easily find the root of a <see cref="SyntaxTree"/> /// given any <see cref="SyntaxNode"/>, as well as a common way for handling the special /// <see cref="EndOfFileToken"/> that is needed to store all final trivia in a <see cref="SourceText"/> /// that is not owned by any other <see cref="SyntaxToken"/>. /// </summary> public interface ICompilationUnitSyntax { /// <summary> /// Represents the end of the source file. This <see cref="SyntaxToken"/> may have /// <see cref="SyntaxTrivia"/> (whitespace, comments, directives) attached to it. /// </summary> SyntaxToken EndOfFileToken { get; } } }