提交 fb3b7665 编写于 作者: T Tomas Matousek

Replace public fields with properties in compiler API

上级 8ee8248b
......@@ -16,7 +16,7 @@ public sealed class CSharpParseOptions : ParseOptions, IEquatable<CSharpParseOpt
/// <summary>
/// The default parse options.
/// </summary>
public static readonly CSharpParseOptions Default = new CSharpParseOptions();
public static CSharpParseOptions Default { get; } = new CSharpParseOptions();
/// <summary>
/// Gets the language version.
......
......@@ -17,8 +17,9 @@ namespace Microsoft.CodeAnalysis.CSharp
{
public class CSharpCommandLineParser : CommandLineParser
{
public static readonly CSharpCommandLineParser Default = new CSharpCommandLineParser();
internal static readonly CSharpCommandLineParser Interactive = new CSharpCommandLineParser(isInteractive: true);
public static CSharpCommandLineParser Default { get; } = new CSharpCommandLineParser();
internal static CSharpCommandLineParser Interactive { get; } = new CSharpCommandLineParser(isInteractive: true);
internal CSharpCommandLineParser(bool isInteractive = false)
: base(CSharp.MessageProvider.Instance, isInteractive)
......
......@@ -11,13 +11,13 @@ namespace Microsoft.CodeAnalysis.CSharp
/// </summary>
public struct AwaitExpressionInfo : IEquatable<AwaitExpressionInfo>
{
public readonly IMethodSymbol GetAwaiterMethod;
public IMethodSymbol GetAwaiterMethod { get; }
public readonly IPropertySymbol IsCompletedProperty;
public IPropertySymbol IsCompletedProperty { get; }
public readonly IMethodSymbol GetResultMethod;
public IMethodSymbol GetResultMethod { get; }
public readonly bool IsDynamic;
public bool IsDynamic { get; }
internal AwaitExpressionInfo(IMethodSymbol getAwaiterMethod,
IPropertySymbol isCompletedProperty,
......
......@@ -14,22 +14,22 @@ public struct ForEachStatementInfo : IEquatable<ForEachStatementInfo>
/// <summary>
/// Gets the &quot;GetEnumerator&quot; method.
/// </summary>
public readonly IMethodSymbol GetEnumeratorMethod;
public IMethodSymbol GetEnumeratorMethod { get; }
/// <summary>
/// Gets the &quot;MoveNext&quot; method.
/// </summary>
public readonly IMethodSymbol MoveNextMethod;
public IMethodSymbol MoveNextMethod { get; }
/// <summary>
/// Gets the &quot;Current&quot; property.
/// </summary>
public readonly IPropertySymbol CurrentProperty;
public IPropertySymbol CurrentProperty { get; }
/// <summary>
/// Gets the &quot;Dispose&quot; method.
/// </summary>
public readonly IMethodSymbol DisposeMethod;
public IMethodSymbol DisposeMethod { get; }
/// <summary>
/// The intermediate type to which the output of the <see cref="CurrentProperty"/> is converted
......@@ -38,7 +38,7 @@ public struct ForEachStatementInfo : IEquatable<ForEachStatementInfo>
/// <remarks>
/// As you might hope, for an array, it is the element type of the array.
/// </remarks>
public readonly ITypeSymbol ElementType;
public ITypeSymbol ElementType { get; }
/// <summary>
/// The conversion from the <see cref="ElementType"/> to the iteration variable type.
......@@ -46,12 +46,12 @@ public struct ForEachStatementInfo : IEquatable<ForEachStatementInfo>
/// <remarks>
/// May be user-defined.
/// </remarks>
public readonly Conversion ElementConversion;
public Conversion ElementConversion { get; }
/// <summary>
/// The conversion from the type of the <see cref="CurrentProperty"/> to the <see cref="ElementType"/>.
/// </summary>
public readonly Conversion CurrentConversion;
public Conversion CurrentConversion { get; }
/// <summary>
/// Initializes a new instance of the <see cref="ForEachStatementInfo" /> structure.
......
// Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System.Globalization;
namespace Microsoft.CodeAnalysis.CSharp
{
public class CSharpDiagnosticFormatter : DiagnosticFormatter
......@@ -10,6 +8,6 @@ internal CSharpDiagnosticFormatter()
{
}
public new static readonly CSharpDiagnosticFormatter Instance = new CSharpDiagnosticFormatter();
public new static CSharpDiagnosticFormatter Instance { get; } = new CSharpDiagnosticFormatter();
}
}
......@@ -14,7 +14,7 @@ namespace Microsoft.CodeAnalysis.CSharp
/// </summary>
public abstract class CSharpSyntaxWalker : CSharpSyntaxVisitor
{
protected readonly SyntaxWalkerDepth Depth;
protected SyntaxWalkerDepth Depth { get; }
protected CSharpSyntaxWalker(SyntaxWalkerDepth depth = SyntaxWalkerDepth.Node)
{
......
......@@ -21,67 +21,67 @@ public static partial class SyntaxFactory
/// <summary>
/// A trivia with kind EndOfLineTrivia containing both the carriage return and line feed characters.
/// </summary>
public static readonly SyntaxTrivia CarriageReturnLineFeed = Syntax.InternalSyntax.SyntaxFactory.CarriageReturnLineFeed;
public static SyntaxTrivia CarriageReturnLineFeed { get; } = Syntax.InternalSyntax.SyntaxFactory.CarriageReturnLineFeed;
/// <summary>
/// A trivia with kind EndOfLineTrivia containing a single line feed character.
/// </summary>
public static readonly SyntaxTrivia LineFeed = Syntax.InternalSyntax.SyntaxFactory.LineFeed;
public static SyntaxTrivia LineFeed { get; } = Syntax.InternalSyntax.SyntaxFactory.LineFeed;
/// <summary>
/// A trivia with kind EndOfLineTrivia containing a single carriage return character.
/// </summary>
public static readonly SyntaxTrivia CarriageReturn = Syntax.InternalSyntax.SyntaxFactory.CarriageReturn;
public static SyntaxTrivia CarriageReturn { get; } = Syntax.InternalSyntax.SyntaxFactory.CarriageReturn;
/// <summary>
/// A trivia with kind WhitespaceTrivia containing a single space character.
/// </summary>
public static readonly SyntaxTrivia Space = Syntax.InternalSyntax.SyntaxFactory.Space;
public static SyntaxTrivia Space { get; } = Syntax.InternalSyntax.SyntaxFactory.Space;
/// <summary>
/// A trivia with kind WhitespaceTrivia containing a single tab character.
/// </summary>
public static readonly SyntaxTrivia Tab = Syntax.InternalSyntax.SyntaxFactory.Tab;
public static SyntaxTrivia Tab { get; } = Syntax.InternalSyntax.SyntaxFactory.Tab;
/// <summary>
/// An elastic trivia with kind EndOfLineTrivia containing both the carriage return and line feed characters.
/// Elastic trivia are used to denote trivia that was not produced by parsing source text, and are usually not
/// preserved during formatting.
/// </summary>
public static readonly SyntaxTrivia ElasticCarriageReturnLineFeed = Syntax.InternalSyntax.SyntaxFactory.ElasticCarriageReturnLineFeed;
public static SyntaxTrivia ElasticCarriageReturnLineFeed { get; } = Syntax.InternalSyntax.SyntaxFactory.ElasticCarriageReturnLineFeed;
/// <summary>
/// An elastic trivia with kind EndOfLineTrivia containing a single line feed character. Elastic trivia are used
/// to denote trivia that was not produced by parsing source text, and are usually not preserved during
/// formatting.
/// </summary>
public static readonly SyntaxTrivia ElasticLineFeed = Syntax.InternalSyntax.SyntaxFactory.ElasticLineFeed;
public static SyntaxTrivia ElasticLineFeed { get; } = Syntax.InternalSyntax.SyntaxFactory.ElasticLineFeed;
/// <summary>
/// An elastic trivia with kind EndOfLineTrivia containing a single carriage return character. Elastic trivia
/// are used to denote trivia that was not produced by parsing source text, and are usually not preserved during
/// formatting.
/// </summary>
public static readonly SyntaxTrivia ElasticCarriageReturn = Syntax.InternalSyntax.SyntaxFactory.ElasticCarriageReturn;
public static SyntaxTrivia ElasticCarriageReturn { get; } = Syntax.InternalSyntax.SyntaxFactory.ElasticCarriageReturn;
/// <summary>
/// An elastic trivia with kind WhitespaceTrivia containing a single space character. Elastic trivia are used to
/// denote trivia that was not produced by parsing source text, and are usually not preserved during formatting.
/// </summary>
public static readonly SyntaxTrivia ElasticSpace = Syntax.InternalSyntax.SyntaxFactory.ElasticSpace;
public static SyntaxTrivia ElasticSpace { get; } = Syntax.InternalSyntax.SyntaxFactory.ElasticSpace;
/// <summary>
/// An elastic trivia with kind WhitespaceTrivia containing a single tab character. Elastic trivia are used to
/// denote trivia that was not produced by parsing source text, and are usually not preserved during formatting.
/// </summary>
public static readonly SyntaxTrivia ElasticTab = Syntax.InternalSyntax.SyntaxFactory.ElasticTab;
public static SyntaxTrivia ElasticTab { get; } = Syntax.InternalSyntax.SyntaxFactory.ElasticTab;
/// <summary>
/// An elastic trivia with kind WhitespaceTrivia containing no characters. Elastic marker trivia are included
/// automatically by factory methods when trivia is not specified. Syntax formatting will replace elastic
/// markers with appropriate trivia.
/// </summary>
public static readonly SyntaxTrivia ElasticMarker = Syntax.InternalSyntax.SyntaxFactory.ElasticZeroSpace;
public static SyntaxTrivia ElasticMarker { get; } = Syntax.InternalSyntax.SyntaxFactory.ElasticZeroSpace;
/// <summary>
/// Creates a trivia with kind EndOfLineTrivia containing the specified text.
......
......@@ -26,6 +26,6 @@ public int GetHashCode(SyntaxKind obj)
/// PERF: The framework specializes EqualityComparer for enums, but only if the underlying type is System.Int32
/// Since SyntaxKind's underlying type is System.UInt16, ObjectEqualityComparer will be chosen instead.
/// </remarks>
public static readonly IEqualityComparer<SyntaxKind> EqualityComparer = new SyntaxKindEqualityComparer();
public static IEqualityComparer<SyntaxKind> EqualityComparer { get; } = new SyntaxKindEqualityComparer();
}
}
......@@ -2082,6 +2082,7 @@ static Microsoft.CodeAnalysis.RuleSet.GetEffectiveIncludesFromFile(string filePa
static Microsoft.CodeAnalysis.RuleSet.LoadEffectiveRuleSetFromFile(string filePath) -> Microsoft.CodeAnalysis.RuleSet
static Microsoft.CodeAnalysis.SeparatedSyntaxList<TNode>.operator !=(Microsoft.CodeAnalysis.SeparatedSyntaxList<TNode> left, Microsoft.CodeAnalysis.SeparatedSyntaxList<TNode> right) -> bool
static Microsoft.CodeAnalysis.SeparatedSyntaxList<TNode>.operator ==(Microsoft.CodeAnalysis.SeparatedSyntaxList<TNode> left, Microsoft.CodeAnalysis.SeparatedSyntaxList<TNode> right) -> bool
static Microsoft.CodeAnalysis.SourceFileResolver.Default.get -> Microsoft.CodeAnalysis.SourceFileResolver
static Microsoft.CodeAnalysis.SubsystemVersion.Create(int major, int minor) -> Microsoft.CodeAnalysis.SubsystemVersion
static Microsoft.CodeAnalysis.SubsystemVersion.None.get -> Microsoft.CodeAnalysis.SubsystemVersion
static Microsoft.CodeAnalysis.SubsystemVersion.TryParse(string str, out Microsoft.CodeAnalysis.SubsystemVersion version) -> bool
......@@ -2184,8 +2185,7 @@ static Microsoft.CodeAnalysis.Text.TextLine.operator ==(Microsoft.CodeAnalysis.T
static Microsoft.CodeAnalysis.Text.TextSpan.FromBounds(int start, int end) -> Microsoft.CodeAnalysis.Text.TextSpan
static Microsoft.CodeAnalysis.Text.TextSpan.operator !=(Microsoft.CodeAnalysis.Text.TextSpan left, Microsoft.CodeAnalysis.Text.TextSpan right) -> bool
static Microsoft.CodeAnalysis.Text.TextSpan.operator ==(Microsoft.CodeAnalysis.Text.TextSpan left, Microsoft.CodeAnalysis.Text.TextSpan right) -> bool
static readonly Microsoft.CodeAnalysis.SourceFileResolver.Default -> Microsoft.CodeAnalysis.SourceFileResolver
static readonly Microsoft.CodeAnalysis.XmlFileResolver.Default -> Microsoft.CodeAnalysis.XmlFileResolver
static Microsoft.CodeAnalysis.XmlFileResolver.Default.get -> Microsoft.CodeAnalysis.XmlFileResolver
virtual Microsoft.CodeAnalysis.Diagnostic.DefaultSeverity.get -> Microsoft.CodeAnalysis.DiagnosticSeverity
virtual Microsoft.CodeAnalysis.Diagnostic.Properties.get -> System.Collections.Immutable.ImmutableDictionary<string, string>
virtual Microsoft.CodeAnalysis.DiagnosticFormatter.Format(Microsoft.CodeAnalysis.Diagnostic diagnostic, System.IFormatProvider formatter = null) -> string
......@@ -2257,4 +2257,4 @@ virtual Microsoft.CodeAnalysis.Text.SourceText.WithChanges(System.Collections.Ge
virtual Microsoft.CodeAnalysis.Text.SourceText.Write(System.IO.TextWriter writer, Microsoft.CodeAnalysis.Text.TextSpan span, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> void
virtual Microsoft.CodeAnalysis.Text.TextLineCollection.GetLineFromPosition(int position) -> Microsoft.CodeAnalysis.Text.TextLine
virtual Microsoft.CodeAnalysis.Text.TextLineCollection.GetLinePosition(int position) -> Microsoft.CodeAnalysis.Text.LinePosition
virtual Microsoft.CodeAnalysis.XmlFileResolver.FileExists(string resolvedPath) -> bool
virtual Microsoft.CodeAnalysis.XmlFileResolver.FileExists(string resolvedPath) -> bool
\ No newline at end of file
......@@ -15,7 +15,7 @@ namespace Microsoft.CodeAnalysis
/// </summary>
public class SourceFileResolver : SourceReferenceResolver
{
public static readonly SourceFileResolver Default = new SourceFileResolver(ImmutableArray<string>.Empty, baseDirectory: null);
public static SourceFileResolver Default { get; } = new SourceFileResolver(ImmutableArray<string>.Empty, baseDirectory: null);
private readonly string _baseDirectory;
private readonly ImmutableArray<string> _searchPaths;
......@@ -34,7 +34,7 @@ public SourceFileResolver(ImmutableArray<string> searchPaths, string baseDirecto
if (baseDirectory != null && PathUtilities.GetPathKind(baseDirectory) != PathKind.Absolute)
{
throw new ArgumentException(CodeAnalysisResources.AbsolutePathExpected, "baseDirectory");
throw new ArgumentException(CodeAnalysisResources.AbsolutePathExpected, nameof(baseDirectory));
}
_baseDirectory = baseDirectory;
......@@ -70,7 +70,7 @@ public override string ResolveReference(string path, string baseFilePath)
public override Stream OpenRead(string resolvedPath)
{
CompilerPathUtilities.RequireAbsolutePath(resolvedPath, "resolvedPath");
CompilerPathUtilities.RequireAbsolutePath(resolvedPath, nameof(resolvedPath));
return FileUtilities.OpenRead(resolvedPath);
}
......
......@@ -12,7 +12,7 @@ namespace Microsoft.CodeAnalysis
/// </summary>
public class XmlFileResolver : XmlReferenceResolver
{
public static readonly XmlFileResolver Default = new XmlFileResolver(baseDirectory: null);
public static XmlFileResolver Default { get; } = new XmlFileResolver(baseDirectory: null);
private readonly string _baseDirectory;
......@@ -20,7 +20,7 @@ public XmlFileResolver(string baseDirectory)
{
if (baseDirectory != null && PathUtilities.GetPathKind(baseDirectory) != PathKind.Absolute)
{
throw new ArgumentException(CodeAnalysisResources.AbsolutePathExpected, "baseDirectory");
throw new ArgumentException(CodeAnalysisResources.AbsolutePathExpected, nameof(baseDirectory));
}
_baseDirectory = baseDirectory;
......@@ -75,7 +75,7 @@ public override string ResolveReference(string path, string baseFilePath)
public override Stream OpenRead(string resolvedPath)
{
CompilerPathUtilities.RequireAbsolutePath(resolvedPath, "resolvedPath");
CompilerPathUtilities.RequireAbsolutePath(resolvedPath, nameof(resolvedPath));
return FileUtilities.OpenRead(resolvedPath);
}
......
......@@ -20,12 +20,12 @@ Namespace Microsoft.CodeAnalysis.VisualBasic
''' <summary>
''' Gets the current command line parser.
''' </summary>
Public Shared ReadOnly [Default] As VisualBasicCommandLineParser = New VisualBasicCommandLineParser()
Public Shared ReadOnly Property [Default] As VisualBasicCommandLineParser = New VisualBasicCommandLineParser()
''' <summary>
''' Gets the current interactive command line parser.
''' </summary>
Friend Shared ReadOnly Interactive As VisualBasicCommandLineParser = New VisualBasicCommandLineParser(isInteractive:=True)
Friend Shared ReadOnly Property Interactive As VisualBasicCommandLineParser = New VisualBasicCommandLineParser(isInteractive:=True)
''' <summary>
''' Creates a new command line parser.
......
' Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
Imports System.Diagnostics
Imports Microsoft.CodeAnalysis.Text
Imports Microsoft.CodeAnalysis.VisualBasic.Symbols
Imports Microsoft.CodeAnalysis.VisualBasic.Syntax
Namespace Microsoft.CodeAnalysis.VisualBasic
''' <summary>
''' Structure containing all semantic information about a for each statement.
''' </summary>
Public Structure ForEachStatementInfo
''' <summary>
''' Initializes a new instance of the <see cref="ForEachStatementInfo" /> structure.
''' </summary>
''' <param name="getEnumeratorMethod">The GetEnumerator method.</param>
''' <param name="moveNextMethod">The MoveNext method.</param>
''' <param name="currentProperty">The Current property.</param>
''' <param name="disposeMethod">The Dispose method.</param>
Friend Sub New(getEnumeratorMethod As IMethodSymbol,
moveNextMethod As IMethodSymbol,
currentProperty As IPropertySymbol,
disposeMethod As IMethodSymbol,
elementType As ITypeSymbol,
elementConversion As Conversion,
currentConversion As Conversion)
Me.GetEnumeratorMethod = getEnumeratorMethod
Me.MoveNextMethod = moveNextMethod
Me.CurrentProperty = currentProperty
Me.DisposeMethod = disposeMethod
Me.ElementType = elementType
Me.ElementConversion = elementConversion
Me.CurrentConversion = currentConversion
End Sub
''' <summary>
''' Gets the &quot;GetEnumerator&quot; method.
''' </summary>
Public ReadOnly GetEnumeratorMethod As IMethodSymbol
Public ReadOnly Property GetEnumeratorMethod As IMethodSymbol
''' <summary>
''' Gets the &quot;MoveNext&quot; method.
''' </summary>
Public ReadOnly MoveNextMethod As IMethodSymbol
Public ReadOnly Property MoveNextMethod As IMethodSymbol
''' <summary>
''' Gets the &quot;Current&quot; property.
''' </summary>
Public ReadOnly CurrentProperty As IPropertySymbol
Public ReadOnly Property CurrentProperty As IPropertySymbol
''' <summary>
''' Gets the &quot;Dispose&quot; method.
''' </summary>
Public ReadOnly DisposeMethod As IMethodSymbol
Public ReadOnly Property DisposeMethod As IMethodSymbol
''' <summary>
''' The intermediate type to which the output of the <see cref="CurrentProperty"/> is converted
......@@ -61,7 +33,7 @@ Namespace Microsoft.CodeAnalysis.VisualBasic
''' <remarks>
''' As you might hope, for an array, it is the element type of the array.
''' </remarks>
Public ReadOnly ElementType As ITypeSymbol
Public ReadOnly Property ElementType As ITypeSymbol
''' <summary>
''' The conversion from the <see cref="ElementType"/> to the iteration variable type.
......@@ -69,7 +41,7 @@ Namespace Microsoft.CodeAnalysis.VisualBasic
''' <remarks>
''' May be user-defined.
''' </remarks>
Public ReadOnly ElementConversion As Conversion
Public ReadOnly Property ElementConversion As Conversion
''' <summary>
''' The conversion from the type of the <see cref="CurrentProperty"/> to the <see cref="ElementType"/>.
......@@ -77,6 +49,29 @@ Namespace Microsoft.CodeAnalysis.VisualBasic
''' <remarks>
''' Frequently the identity conversion.
''' </remarks>
Public ReadOnly CurrentConversion As Conversion
Public ReadOnly Property CurrentConversion As Conversion
''' <summary>
''' Initializes a new instance of the <see cref="ForEachStatementInfo" /> structure.
''' </summary>
''' <param name="getEnumeratorMethod">The GetEnumerator method.</param>
''' <param name="moveNextMethod">The MoveNext method.</param>
''' <param name="currentProperty">The Current property.</param>
''' <param name="disposeMethod">The Dispose method.</param>
Friend Sub New(getEnumeratorMethod As IMethodSymbol,
moveNextMethod As IMethodSymbol,
currentProperty As IPropertySymbol,
disposeMethod As IMethodSymbol,
elementType As ITypeSymbol,
elementConversion As Conversion,
currentConversion As Conversion)
Me.GetEnumeratorMethod = getEnumeratorMethod
Me.MoveNextMethod = moveNextMethod
Me.CurrentProperty = currentProperty
Me.DisposeMethod = disposeMethod
Me.ElementType = elementType
Me.ElementConversion = elementConversion
Me.CurrentConversion = currentConversion
End Sub
End Structure
End Namespace
' Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
Imports System.Threading
Imports Microsoft.CodeAnalysis.Text
Imports Microsoft.CodeAnalysis.VisualBasic.Symbols
Imports Microsoft.CodeAnalysis.VisualBasic.Syntax
Namespace Microsoft.CodeAnalysis.VisualBasic
Public Structure CollectionRangeVariableSymbolInfo
''' <summary>
''' Optional AsQueryable/AsEnumerable/Cast(Of Object) method used
''' to "convert" CollectionRangeVariableSyntax.Expression to queryable
''' to "convert" <see cref="CollectionRangeVariableSyntax.Expression"/> to queryable
''' collection.
''' </summary>
Public ReadOnly ToQueryableCollectionConversion As SymbolInfo
Public ReadOnly Property ToQueryableCollectionConversion As SymbolInfo
''' <summary>
''' Optional Select method to handle AsClause.
''' </summary>
Public ReadOnly AsClauseConversion As SymbolInfo
Public ReadOnly Property AsClauseConversion As SymbolInfo
''' <summary>
''' SelectMany method for CollectionRangeVariableSyntax, which is not the first
''' CollectionRangeVariableSyntax in a QueryExpressionSyntax, and is not the first
''' CollectionRangeVariableSyntax in AggregateClauseSyntax.
''' SelectMany method for <see cref="CollectionRangeVariableSyntax"/>, which is not the first
''' <see cref="CollectionRangeVariableSyntax"/> in a <see cref="QueryExpressionSyntax"/>, and is not the first
''' <see cref="CollectionRangeVariableSyntax"/> in <see cref="AggregateClauseSyntax"/>.
''' </summary>
''' <remarks></remarks>
Public ReadOnly SelectMany As SymbolInfo
Public ReadOnly Property SelectMany As SymbolInfo
Friend Shared ReadOnly None As New CollectionRangeVariableSymbolInfo(SymbolInfo.None, SymbolInfo.None, SymbolInfo.None)
......@@ -44,14 +40,14 @@ Namespace Microsoft.CodeAnalysis.VisualBasic
Public Structure AggregateClauseSymbolInfo
''' <summary>
''' The first of the two optional Select methods associated with AggregateClauseSyntax.
''' The first of the two optional Select methods associated with <see cref="AggregateClauseSyntax"/>.
''' </summary>
Public ReadOnly Select1 As SymbolInfo
Public ReadOnly Property Select1 As SymbolInfo
''' <summary>
''' The second of the two optional Select methods associated with AggregateClauseSyntax.
''' The second of the two optional Select methods associated with <see cref="AggregateClauseSyntax"/>.
''' </summary>
Public ReadOnly Select2 As SymbolInfo
Public ReadOnly Property Select2 As SymbolInfo
Friend Sub New(select1 As SymbolInfo)
Me.Select1 = select1
......
......@@ -20,6 +20,6 @@ Namespace Microsoft.CodeAnalysis.VisualBasic
''' <summary>
''' Gets the current DiagnosticFormatter instance.
''' </summary>
Public Shared Shadows ReadOnly Instance As VisualBasicDiagnosticFormatter = New VisualBasicDiagnosticFormatter()
Public Shared Shadows ReadOnly Property Instance As VisualBasicDiagnosticFormatter = New VisualBasicDiagnosticFormatter()
End Class
End Namespace
......@@ -4690,19 +4690,6 @@ Overrides Microsoft.CodeAnalysis.VisualBasic.VisualBasicSyntaxTree.TryGetRootCor
Overrides Microsoft.CodeAnalysis.VisualBasic.VisualBasicSyntaxTree.WithChangedText(newText As Microsoft.CodeAnalysis.Text.SourceText) -> Microsoft.CodeAnalysis.SyntaxTree
Overrides Microsoft.CodeAnalysis.VisualBasic.VisualBasicSyntaxWalker.DefaultVisit(node As Microsoft.CodeAnalysis.SyntaxNode) -> Void
Overrides Microsoft.CodeAnalysis.VisualBasic.VisualBasicSyntaxWalker.Visit(node As Microsoft.CodeAnalysis.SyntaxNode) -> Void
ReadOnly Microsoft.CodeAnalysis.VisualBasic.AggregateClauseSymbolInfo.Select1 -> Microsoft.CodeAnalysis.SymbolInfo
ReadOnly Microsoft.CodeAnalysis.VisualBasic.AggregateClauseSymbolInfo.Select2 -> Microsoft.CodeAnalysis.SymbolInfo
ReadOnly Microsoft.CodeAnalysis.VisualBasic.CollectionRangeVariableSymbolInfo.AsClauseConversion -> Microsoft.CodeAnalysis.SymbolInfo
ReadOnly Microsoft.CodeAnalysis.VisualBasic.CollectionRangeVariableSymbolInfo.SelectMany -> Microsoft.CodeAnalysis.SymbolInfo
ReadOnly Microsoft.CodeAnalysis.VisualBasic.CollectionRangeVariableSymbolInfo.ToQueryableCollectionConversion -> Microsoft.CodeAnalysis.SymbolInfo
ReadOnly Microsoft.CodeAnalysis.VisualBasic.ForEachStatementInfo.CurrentConversion -> Microsoft.CodeAnalysis.VisualBasic.Conversion
ReadOnly Microsoft.CodeAnalysis.VisualBasic.ForEachStatementInfo.CurrentProperty -> Microsoft.CodeAnalysis.IPropertySymbol
ReadOnly Microsoft.CodeAnalysis.VisualBasic.ForEachStatementInfo.DisposeMethod -> Microsoft.CodeAnalysis.IMethodSymbol
ReadOnly Microsoft.CodeAnalysis.VisualBasic.ForEachStatementInfo.ElementConversion -> Microsoft.CodeAnalysis.VisualBasic.Conversion
ReadOnly Microsoft.CodeAnalysis.VisualBasic.ForEachStatementInfo.ElementType -> Microsoft.CodeAnalysis.ITypeSymbol
ReadOnly Microsoft.CodeAnalysis.VisualBasic.ForEachStatementInfo.GetEnumeratorMethod -> Microsoft.CodeAnalysis.IMethodSymbol
ReadOnly Microsoft.CodeAnalysis.VisualBasic.ForEachStatementInfo.MoveNextMethod -> Microsoft.CodeAnalysis.IMethodSymbol
ReadOnly Microsoft.CodeAnalysis.VisualBasic.VisualBasicSyntaxWalker.Depth -> Microsoft.CodeAnalysis.SyntaxWalkerDepth
Shared Microsoft.CodeAnalysis.VisualBasic.Conversion.<>(left As Microsoft.CodeAnalysis.VisualBasic.Conversion, right As Microsoft.CodeAnalysis.VisualBasic.Conversion) -> Boolean
Shared Microsoft.CodeAnalysis.VisualBasic.Conversion.=(left As Microsoft.CodeAnalysis.VisualBasic.Conversion, right As Microsoft.CodeAnalysis.VisualBasic.Conversion) -> Boolean
Shared Microsoft.CodeAnalysis.VisualBasic.GlobalImport.<>(left As Microsoft.CodeAnalysis.VisualBasic.GlobalImport, right As Microsoft.CodeAnalysis.VisualBasic.GlobalImport) -> Boolean
......@@ -5903,18 +5890,3 @@ Shared Microsoft.CodeAnalysis.VisualBasic.VisualBasicSyntaxNode.DeserializeFrom(
Shared Microsoft.CodeAnalysis.VisualBasic.VisualBasicSyntaxTree.Create(root As Microsoft.CodeAnalysis.VisualBasic.VisualBasicSyntaxNode, options As Microsoft.CodeAnalysis.VisualBasic.VisualBasicParseOptions = Nothing, path As String = "", encoding As System.Text.Encoding = Nothing) -> Microsoft.CodeAnalysis.SyntaxTree
Shared Microsoft.CodeAnalysis.VisualBasic.VisualBasicSyntaxTree.ParseText(text As Microsoft.CodeAnalysis.Text.SourceText, options As Microsoft.CodeAnalysis.VisualBasic.VisualBasicParseOptions = Nothing, path As String = "", cancellationToken As System.Threading.CancellationToken = Nothing) -> Microsoft.CodeAnalysis.SyntaxTree
Shared Microsoft.CodeAnalysis.VisualBasic.VisualBasicSyntaxTree.ParseText(text As String, options As Microsoft.CodeAnalysis.VisualBasic.VisualBasicParseOptions = Nothing, path As String = "", encoding As System.Text.Encoding = Nothing, cancellationToken As System.Threading.CancellationToken = Nothing) -> Microsoft.CodeAnalysis.SyntaxTree
Shared ReadOnly Microsoft.CodeAnalysis.VisualBasic.SyntaxFactory.CarriageReturn -> Microsoft.CodeAnalysis.SyntaxTrivia
Shared ReadOnly Microsoft.CodeAnalysis.VisualBasic.SyntaxFactory.CarriageReturnLineFeed -> Microsoft.CodeAnalysis.SyntaxTrivia
Shared ReadOnly Microsoft.CodeAnalysis.VisualBasic.SyntaxFactory.ElasticCarriageReturn -> Microsoft.CodeAnalysis.SyntaxTrivia
Shared ReadOnly Microsoft.CodeAnalysis.VisualBasic.SyntaxFactory.ElasticCarriageReturnLineFeed -> Microsoft.CodeAnalysis.SyntaxTrivia
Shared ReadOnly Microsoft.CodeAnalysis.VisualBasic.SyntaxFactory.ElasticLineFeed -> Microsoft.CodeAnalysis.SyntaxTrivia
Shared ReadOnly Microsoft.CodeAnalysis.VisualBasic.SyntaxFactory.ElasticMarker -> Microsoft.CodeAnalysis.SyntaxTrivia
Shared ReadOnly Microsoft.CodeAnalysis.VisualBasic.SyntaxFactory.ElasticSpace -> Microsoft.CodeAnalysis.SyntaxTrivia
Shared ReadOnly Microsoft.CodeAnalysis.VisualBasic.SyntaxFactory.ElasticTab -> Microsoft.CodeAnalysis.SyntaxTrivia
Shared ReadOnly Microsoft.CodeAnalysis.VisualBasic.SyntaxFactory.LineFeed -> Microsoft.CodeAnalysis.SyntaxTrivia
Shared ReadOnly Microsoft.CodeAnalysis.VisualBasic.SyntaxFactory.Space -> Microsoft.CodeAnalysis.SyntaxTrivia
Shared ReadOnly Microsoft.CodeAnalysis.VisualBasic.SyntaxFactory.Tab -> Microsoft.CodeAnalysis.SyntaxTrivia
Shared ReadOnly Microsoft.CodeAnalysis.VisualBasic.SyntaxFacts.EqualityComparer -> System.Collections.Generic.IEqualityComparer(Of Microsoft.CodeAnalysis.VisualBasic.SyntaxKind)
Shared ReadOnly Microsoft.CodeAnalysis.VisualBasic.VisualBasicCommandLineParser.Default -> Microsoft.CodeAnalysis.VisualBasic.VisualBasicCommandLineParser
Shared ReadOnly Microsoft.CodeAnalysis.VisualBasic.VisualBasicDiagnosticFormatter.Instance -> Microsoft.CodeAnalysis.VisualBasic.VisualBasicDiagnosticFormatter
Shared ReadOnly Microsoft.CodeAnalysis.VisualBasic.VisualBasicParseOptions.Default -> Microsoft.CodeAnalysis.VisualBasic.VisualBasicParseOptions
\ No newline at end of file
' Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
Imports System.Runtime.CompilerServices
Imports Microsoft.CodeAnalysis.Text
Imports Microsoft.CodeAnalysis.VisualBasic.Symbols
Imports Microsoft.CodeAnalysis.VisualBasic.Syntax
Imports VbObjectDisplay = Microsoft.CodeAnalysis.VisualBasic.ObjectDisplay.ObjectDisplay
......@@ -12,67 +9,67 @@ Namespace Microsoft.CodeAnalysis.VisualBasic
''' <summary>
''' A trivia with kind EndOfLineTrivia containing both the carriage return And line feed characters.
''' </summary>
Public Shared ReadOnly CarriageReturnLineFeed As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.CarriageReturnLineFeed, SyntaxTrivia)
Public Shared ReadOnly Property CarriageReturnLineFeed As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.CarriageReturnLineFeed, SyntaxTrivia)
''' <summary>
''' A trivia with kind EndOfLineTrivia containing a single line feed character.
''' </summary>
Public Shared ReadOnly LineFeed As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.LineFeed, SyntaxTrivia)
Public Shared ReadOnly Property LineFeed As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.LineFeed, SyntaxTrivia)
''' <summary>
''' A trivia with kind EndOfLineTrivia containing a single carriage return character.
''' </summary>
Public Shared ReadOnly CarriageReturn As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.CarriageReturn, SyntaxTrivia)
Public Shared ReadOnly Property CarriageReturn As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.CarriageReturn, SyntaxTrivia)
''' <summary>
''' A trivia with kind WhitespaceTrivia containing a single space character.
''' </summary>
Public Shared ReadOnly Space As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.Space, SyntaxTrivia)
Public Shared ReadOnly Property Space As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.Space, SyntaxTrivia)
''' <summary>
''' A trivia with kind WhitespaceTrivia containing a single tab character.
''' </summary>
Public Shared ReadOnly Tab As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.Tab, SyntaxTrivia)
Public Shared ReadOnly Property Tab As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.Tab, SyntaxTrivia)
''' <summary>
''' An elastic trivia with kind EndOfLineTrivia containing both the carriage return And line feed characters.
''' Elastic trivia are used to denote trivia that was Not produced by parsing source text, And are usually Not
''' preserved during formatting.
''' </summary>
Public Shared ReadOnly ElasticCarriageReturnLineFeed As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.ElasticCarriageReturnLineFeed, SyntaxTrivia)
Public Shared ReadOnly Property ElasticCarriageReturnLineFeed As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.ElasticCarriageReturnLineFeed, SyntaxTrivia)
''' <summary>
''' An elastic trivia with kind EndOfLineTrivia containing a single line feed character. Elastic trivia are used
''' to denote trivia that was Not produced by parsing source text, And are usually Not preserved during
''' formatting.
''' </summary>
Public Shared ReadOnly ElasticLineFeed As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.ElasticLineFeed, SyntaxTrivia)
Public Shared ReadOnly Property ElasticLineFeed As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.ElasticLineFeed, SyntaxTrivia)
''' <summary>
''' An elastic trivia with kind EndOfLineTrivia containing a single carriage return character. Elastic trivia
''' are used to denote trivia that was Not produced by parsing source text, And are usually Not preserved during
''' formatting.
''' </summary>
Public Shared ReadOnly ElasticCarriageReturn As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.ElasticCarriageReturn, SyntaxTrivia)
Public Shared ReadOnly Property ElasticCarriageReturn As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.ElasticCarriageReturn, SyntaxTrivia)
''' <summary>
''' An elastic trivia with kind WhitespaceTrivia containing a single space character. Elastic trivia are used to
''' denote trivia that was Not produced by parsing source text, And are usually Not preserved during formatting.
''' </summary>
Public Shared ReadOnly ElasticSpace As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.ElasticSpace, SyntaxTrivia)
Public Shared ReadOnly Property ElasticSpace As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.ElasticSpace, SyntaxTrivia)
''' <summary>
''' An elastic trivia with kind WhitespaceTrivia containing a single tab character. Elastic trivia are used to
''' denote trivia that was Not produced by parsing source text, And are usually Not preserved during formatting.
''' </summary>
Public Shared ReadOnly ElasticTab As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.ElasticTab, SyntaxTrivia)
Public Shared ReadOnly Property ElasticTab As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.ElasticTab, SyntaxTrivia)
''' <summary>
''' An elastic trivia with kind WhitespaceTrivia containing no characters. Elastic marker trivia are included
''' automatically by factory methods when trivia Is Not specified. Syntax formatting will replace elastic
''' markers with appropriate trivia.
''' </summary>
Public Shared ReadOnly ElasticMarker As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.ElasticZeroSpace, SyntaxTrivia)
Public Shared ReadOnly Property ElasticMarker As SyntaxTrivia = CType(InternalSyntax.SyntaxFactory.ElasticZeroSpace, SyntaxTrivia)
Private Shared ReadOnly s_elasticMarkerList As SyntaxTriviaList = SyntaxFactory.TriviaList(CType(InternalSyntax.SyntaxFactory.ElasticZeroSpace, SyntaxTrivia))
''' <summary>
......
......@@ -23,7 +23,6 @@ Namespace Microsoft.CodeAnalysis.VisualBasic
''' PERF: The framework specializes EqualityComparer for enums, but only if the underlying type is System.Int32
''' Since SyntaxKind's underlying type is System.UInt16, ObjectEqualityComparer will be chosen instead.
''' </remarks>
Public Shared ReadOnly EqualityComparer As IEqualityComparer(Of SyntaxKind) = New SyntaxKindEqualityComparer
Public Shared ReadOnly Property EqualityComparer As IEqualityComparer(Of SyntaxKind) = New SyntaxKindEqualityComparer
End Class
End Namespace
' Copyright (c) Microsoft. All Rights Reserved. Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
Imports Microsoft.CodeAnalysis.Text
Imports Microsoft.CodeAnalysis.VisualBasic.Symbols
Imports Microsoft.CodeAnalysis.VisualBasic.Syntax
Namespace Microsoft.CodeAnalysis.VisualBasic
''' <summary>
''' Represents a <see cref="VisualBasicSyntaxVisitor"/> that descends an entire <see cref="SyntaxNode"/> tree
......@@ -12,7 +8,7 @@ Namespace Microsoft.CodeAnalysis.VisualBasic
Public MustInherit Class VisualBasicSyntaxWalker
Inherits VisualBasicSyntaxVisitor
Protected ReadOnly Depth As SyntaxWalkerDepth
Protected ReadOnly Property Depth As SyntaxWalkerDepth
Protected Sub New(Optional depth As SyntaxWalkerDepth = SyntaxWalkerDepth.Node)
Me.Depth = depth
......
......@@ -13,7 +13,7 @@ Namespace Microsoft.CodeAnalysis.VisualBasic
Inherits ParseOptions
Implements IEquatable(Of VisualBasicParseOptions)
Public Shared ReadOnly [Default] As VisualBasicParseOptions = New VisualBasicParseOptions()
Public Shared ReadOnly Property [Default] As VisualBasicParseOptions = New VisualBasicParseOptions()
Private Shared s_defaultPreprocessorSymbols As ImmutableArray(Of KeyValuePair(Of String, Object))
Private _preprocessorSymbols As ImmutableArray(Of KeyValuePair(Of String, Object))
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册