You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
908 lines
64 KiB
908 lines
64 KiB
<?xml version="1.0"?>
|
|
<doc>
|
|
<assembly>
|
|
<name>Microsoft.CodeAnalysis.CSharp.Workspaces</name>
|
|
</assembly>
|
|
<members>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Classification.ClassificationHelpers.GetClassification(Microsoft.CodeAnalysis.SyntaxToken)">
|
|
<summary>
|
|
Determine the classification type for a given token.
|
|
</summary>
|
|
<param name="token">The token.</param>
|
|
<returns>The correct syntactic classification for the token.</returns>
|
|
</member>
|
|
<member name="T:Microsoft.CodeAnalysis.CSharp.Classification.Worker">
|
|
<summary>
|
|
Worker is an utility class that can classify a list of tokens or a tree within a
|
|
requested span The implementation is generic and can produce any kind of classification
|
|
artifacts T T is normally either ClassificationSpan or a Tuple (for testing purposes)
|
|
and constructed via provided factory.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.CodeGeneration.CSharpSyntaxGenerator.ShiftTrivia(Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.SyntaxNode)">
|
|
<summary>
|
|
Moves the trailing trivia from the node's previous token to the end of the node
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.CodeGeneration.CSharpCodeGenerationHelpers.GetReuseableSyntaxNodeForSymbol``1(Microsoft.CodeAnalysis.ISymbol,Microsoft.CodeAnalysis.CSharp.CodeGeneration.CSharpCodeGenerationContextInfo)">
|
|
<summary>
|
|
Try use the existing syntax node and generate a new syntax node for the given <param name="symbol"/>.
|
|
Note: the returned syntax node might be modified, which means its parent information might be missing.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.CodeGeneration.CSharpSyntaxGeneratorInternal.RequiresLocalDeclarationType">
|
|
<summary>
|
|
C# always requires a type to be present with a local declaration. (Even if that type is
|
|
<c>var</c>).
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.CodeGeneration.CSharpSyntaxGeneratorInternal.ParenthesizeLeft(Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax)">
|
|
<summary>
|
|
Parenthesize the left hand size of a member access, invocation or element access expression
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.FindSymbols.CSharpDeclaredSymbolInfoFactoryService.GetSuffix(System.Char,System.Char,Microsoft.CodeAnalysis.SeparatedSyntaxList{Microsoft.CodeAnalysis.CSharp.Syntax.ParameterSyntax})">
|
|
<summary>
|
|
Builds up the suffix to show for something with parameters in navigate-to.
|
|
While it would be nice to just use the compiler SymbolDisplay API for this,
|
|
it would be too expensive as it requires going back to Symbols (which requires
|
|
creating compilations, etc.) in a perf sensitive area.
|
|
|
|
So, instead, we just build a reasonable suffix using the pure syntax that a
|
|
user provided. That means that if they wrote "Method(System.Int32 i)" we'll
|
|
show that as "Method(System.Int32)" not "Method(int)". Given that this is
|
|
actually what the user wrote, and it saves us from ever having to go back to
|
|
symbols/compilations, this is well worth it, even if it does mean we have to
|
|
create our own 'symbol display' logic here.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions">
|
|
<inheritdoc cref="T:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpacingAfterMethodDeclarationName">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpacingAfterMethodDeclarationName"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceWithinMethodDeclarationParenthesis">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceWithinMethodDeclarationParenthesis"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceBetweenEmptyMethodDeclarationParentheses">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceBetweenEmptyMethodDeclarationParentheses"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceAfterMethodCallName">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceAfterMethodCallName"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceWithinMethodCallParentheses">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceWithinMethodCallParentheses"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceBetweenEmptyMethodCallParentheses">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceBetweenEmptyMethodCallParentheses"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceAfterControlFlowStatementKeyword">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceAfterControlFlowStatementKeyword"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceAfterCast">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceAfterCast"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpacesIgnoreAroundVariableDeclaration">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpacesIgnoreAroundVariableDeclaration"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceBeforeOpenSquareBracket">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceBeforeOpenSquareBracket"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceBetweenEmptySquareBrackets">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceBetweenEmptySquareBrackets"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceWithinSquareBrackets">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceWithinSquareBrackets"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceAfterColonInBaseTypeDeclaration">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceAfterColonInBaseTypeDeclaration"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceAfterComma">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceAfterComma"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceAfterDot">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceAfterDot"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceAfterSemicolonsInForStatement">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceAfterSemicolonsInForStatement"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceBeforeColonInBaseTypeDeclaration">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceBeforeColonInBaseTypeDeclaration"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceBeforeComma">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceBeforeComma"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceBeforeDot">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceBeforeDot"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpaceBeforeSemicolonsInForStatement">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpaceBeforeSemicolonsInForStatement"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.SpacingAroundBinaryOperator">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.SpacingAroundBinaryOperator"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.IndentBraces">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.IndentBraces"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.IndentBlock">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.IndentBlock"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.IndentSwitchSection">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.IndentSwitchSection"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.IndentSwitchCaseSection">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.IndentSwitchCaseSection"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.IndentSwitchCaseSectionWhenBlock">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.IndentSwitchCaseSectionWhenBlock"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.LabelPositioning">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.LabelPositioning"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.WrappingPreserveSingleLine">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.WrappingPreserveSingleLine"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.WrappingKeepStatementsOnSingleLine">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.WrappingKeepStatementsOnSingleLine"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.NewLineForElse">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.NewLineForElse"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.NewLineForCatch">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.NewLineForCatch"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.NewLineForFinally">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.NewLineForFinally"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.NewLineForMembersInObjectInit">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.NewLineForMembersInObjectInit"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.NewLineForMembersInAnonymousTypes">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.NewLineForMembersInAnonymousTypes"/>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions.NewLineForClausesInQuery">
|
|
<inheritdoc cref="P:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.NewLineForClausesInQuery"/>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpSyntaxFormattingService.ValidSingleOrMultiCharactersTokenKind(System.Char,Microsoft.CodeAnalysis.CSharp.SyntaxKind)">
|
|
<summary>
|
|
We'll autoformat on 'n', 't', 'e', only if they are the last character of the below keywords.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.CollectionExpressionWrappingLength">
|
|
<summary>
|
|
Internal option -- not exposed to editorconfig tooling via <see cref="F:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.EditorConfigOptions"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.EditorConfigOptions">
|
|
<summary>
|
|
Options that we expect the user to set in editorconfig.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpFormattingOptions2.UndocumentedOptions">
|
|
<summary>
|
|
Options that can be set via editorconfig but we do not provide tooling support.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.Formatting.LabelPositionOptions.LeftMost">
|
|
Placed in the Zeroth column of the text editor
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.Formatting.LabelPositionOptions.OneLess">
|
|
Placed at one less indent to the current context
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.Formatting.LabelPositionOptions.NoIndent">
|
|
Placed at the same indent as the current context
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.Formatting.BinaryOperatorSpacingOptions.Single">
|
|
Single Spacing
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.Formatting.BinaryOperatorSpacingOptions.Ignore">
|
|
Ignore Formatting
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.Formatting.BinaryOperatorSpacingOptions.Remove">
|
|
Remove Spacing
|
|
</member>
|
|
<member name="T:Microsoft.CodeAnalysis.CSharp.Formatting.FormattingResult">
|
|
<summary>
|
|
this holds onto changes made by formatting engine.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Formatting.CSharpTriviaFormatter.IsVisualBasicComment(Microsoft.CodeAnalysis.SyntaxTrivia)">
|
|
<summary>
|
|
C# never passes a VB Comment
|
|
</summary>
|
|
<param name="trivia"></param>
|
|
</member>
|
|
<member name="T:Microsoft.CodeAnalysis.CSharp.Formatting.TriviaDataFactory">
|
|
<summary>
|
|
trivia factory.
|
|
|
|
it will cache some commonly used trivia to reduce memory footprint and heap allocation
|
|
</summary>
|
|
</member>
|
|
<member name="T:Microsoft.CodeAnalysis.CSharp.Formatting.TriviaDataFactory.ComplexTrivia">
|
|
<summary>
|
|
represents a general trivia between two tokens. slightly more expensive than others since it
|
|
needs to calculate stuff unlike other cases
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Formatting.FormattingHelpers.IsOpenParenInVarDeconstructionDeclaration(Microsoft.CodeAnalysis.SyntaxToken)">
|
|
<summary>
|
|
Checks whether currentToken is the opening paren of a deconstruction-declaration in var form, such as <c>var (x, y) = ...</c>
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Formatting.FormattingHelpers.IsCommaInTupleExpression(Microsoft.CodeAnalysis.SyntaxToken)">
|
|
<summary>
|
|
Check whether the currentToken is a comma and is a delimiter between arguments inside a tuple expression.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Microsoft.CodeAnalysis.CSharp.Recommendations.CSharpRecommendationService.CSharpRecommendationServiceRunner">
|
|
<summary>
|
|
Adds user defined and predefined conversions to the unnamed recommendation set.
|
|
</summary>
|
|
<summary>
|
|
Adds user defined operators to the unnamed recommendation set.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.Rename.CSharpRenameConflictLanguageService.RenameRewriter._isRenamingInStrings">
|
|
<summary>
|
|
Flag indicating if we should perform a rename inside string literals.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.Rename.CSharpRenameConflictLanguageService.RenameRewriter._isRenamingInComments">
|
|
<summary>
|
|
Flag indicating if we should perform a rename inside comment trivia.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.Rename.CSharpRenameConflictLanguageService.RenameRewriter._stringAndCommentTextSpans">
|
|
<summary>
|
|
A map from spans of tokens needing rename within strings or comments to an optional
|
|
set of specific sub-spans within the token span that
|
|
have <see cref="F:Microsoft.CodeAnalysis.CSharp.Rename.CSharpRenameConflictLanguageService.RenameRewriter._originalText"/> matches and should be renamed.
|
|
If this sorted set is null, it indicates that sub-spans to rename within the token span
|
|
are not available, and a regex match should be performed to rename
|
|
all <see cref="F:Microsoft.CodeAnalysis.CSharp.Rename.CSharpRenameConflictLanguageService.RenameRewriter._originalText"/> matches within the span.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Rename.CSharpRenameConflictLanguageService.GetExpansionTargetForLocation(Microsoft.CodeAnalysis.SyntaxToken)">
|
|
<summary>
|
|
Gets the top most enclosing statement or CrefSyntax as target to call MakeExplicit on.
|
|
It's either the enclosing statement, or if this statement is inside of a lambda expression, the enclosing
|
|
statement of this lambda.
|
|
</summary>
|
|
<param name="token">The token to get the complexification target for.</param>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Rename.CSharpRenameConflictLanguageService.GetSemanticModelForNode(Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.SemanticModel)">
|
|
<summary>
|
|
Gets the semantic model for the given node.
|
|
If the node belongs to the syntax tree of the original semantic model, then returns originalSemanticModel.
|
|
Otherwise, returns a speculative model.
|
|
The assumption for the later case is that span start position of the given node in it's syntax tree is same as
|
|
the span start of the original node in the original syntax tree.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Simplification.CSharpSimplificationService.NodesAndTokensToReduceComputer.Compute(Microsoft.CodeAnalysis.SyntaxNode,System.Func{Microsoft.CodeAnalysis.SyntaxNodeOrToken,System.Boolean})">
|
|
<summary>
|
|
Computes a list of nodes and tokens that need to be reduced in the given syntax root.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Microsoft.CodeAnalysis.CSharp.Simplification.CSharpInferredMemberNameReducer">
|
|
<summary>
|
|
Complexify makes inferred names explicit for tuple elements and anonymous type members. This
|
|
class considers which ones of those can be simplified (after the refactoring was done).
|
|
If the inferred name of the member matches, the explicit name (from Complexify) can be removed.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Microsoft.CodeAnalysis.CSharp.Simplification.Simplifiers.AbstractCSharpSimplifier`2">
|
|
<summary>
|
|
Contains helpers used by several simplifier subclasses.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Simplification.Simplifiers.AbstractCSharpSimplifier`2.TryGetPredefinedKeywordToken(Microsoft.CodeAnalysis.SemanticModel,Microsoft.CodeAnalysis.SpecialType)">
|
|
<summary>
|
|
Returns the predefined keyword kind for a given <see cref="T:Microsoft.CodeAnalysis.SpecialType"/>.
|
|
</summary>
|
|
<param name="specialType">The <see cref="T:Microsoft.CodeAnalysis.SpecialType"/> of this type.</param>
|
|
<returns>The keyword kind for a given special type, or SyntaxKind.None if the type name is not a predefined type.</returns>
|
|
</member>
|
|
<member name="T:Microsoft.CodeAnalysis.CSharp.Simplification.Simplifiers.ExpressionSimplifier.CandidateSymbolEqualityComparer">
|
|
<summary>
|
|
Compares symbols by their original definition.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Simplification.Simplifiers.ExpressionSimplifier.IsReplacementCandidate(Microsoft.CodeAnalysis.ISymbol,System.Collections.Immutable.ImmutableArray{Microsoft.CodeAnalysis.ISymbol},System.Collections.Immutable.ImmutableArray{Microsoft.CodeAnalysis.ISymbol})">
|
|
<summary>
|
|
Determines if <paramref name="speculativeSymbols"/> and <paramref name="speculativeNamespacesAndTypes"/>
|
|
together contain a superset of the symbols in <paramref name="actualSymbol"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Simplification.Simplifiers.ExpressionSimplifier.IsNonRemovablePartOfDynamicMethodInvocation(Microsoft.CodeAnalysis.SemanticModel,Microsoft.CodeAnalysis.CSharp.Syntax.MemberAccessExpressionSyntax,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Tells if the member access is dynamically invoked and cannot be reduced. In the case of
|
|
<c>NS1.NS2.T1.T2.Method(...dynamic...)</c> we can only remove the <c>NS1.NS2</c>
|
|
portion. The namespace part is not encoded into the IL, but the specific types in
|
|
<c>T1.T2</c> and cannot be removed.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Simplification.Simplifiers.NameSimplifier.IsPartOfNamespaceDeclarationName(Microsoft.CodeAnalysis.SyntaxNode)">
|
|
<summary>
|
|
Checks if the SyntaxNode is a name of a namespace declaration. To be a namespace name, the syntax
|
|
must be parented by an namespace declaration and the node itself must be equal to the declaration's Name
|
|
property.
|
|
</summary>
|
|
<param name="node"></param>
|
|
</member>
|
|
<member name="T:Microsoft.CodeAnalysis.CSharp.Simplification.Simplifiers.CastSimplifier">
|
|
<summary>
|
|
By default the cast simplifier operates under several main principles:
|
|
<list type="number">
|
|
<item>The final type that a cast-expression was converted to should be the same as the final
|
|
type that the underlying expression should convert to without the cast. This tells us that
|
|
the compiler thinks that value should convert to that type implicitly, not just explicitly.</item>
|
|
<item>Static semantics of the code should remain the same. This means that things like overload
|
|
resolution of the invocations the casted expression is contained within should not change.</item>
|
|
<item>Runtime types and values should not observably change. This means that if casting the
|
|
value would cause a different type to be seen in a <see cref="M:System.Object.GetType"/> call,
|
|
or a different value could be observed at runtime, then it must remain.</item>
|
|
</list>
|
|
|
|
These rules serve as a good foundational intuition about when casts should be kept and when
|
|
they should be removable. However, they are not entirely complete. There are cases when we
|
|
can weaken some of the above rules if it would not be observable at runtime. For example,
|
|
if it can be proven that calling through an interface method would lead to the exact same
|
|
call at runtime to a specific implementation of that interface method, then it can be legal to
|
|
remove such a cast as at runtime this would not be observable. This does in effect mean that
|
|
the emitted IL will be different, but this matches the user expectation that the *end* behavior
|
|
of their code remains the same.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Microsoft.CodeAnalysis.CSharp.CSharpSyntaxTreeFactoryService.ParsedSyntaxTree">
|
|
<summary>
|
|
Parsed <see cref="T:Microsoft.CodeAnalysis.CSharp.CSharpSyntaxTree"/> that creates <see cref="T:Microsoft.CodeAnalysis.Text.SourceText"/> with given encoding and checksum algorithm.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.CodeStyle.CSharpCodeStyleOptions.EditorConfigOptions">
|
|
<summary>
|
|
Options that we expect the user to set in editorconfig.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.CodeStyle.TypeStyle.TypeStyleHelper.IsTypeApparentInAssignmentExpression(Microsoft.CodeAnalysis.CSharp.CodeStyle.TypeStyle.UseVarPreference,Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,Microsoft.CodeAnalysis.SemanticModel,Microsoft.CodeAnalysis.ITypeSymbol,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Analyzes if type information is obvious to the reader by simply looking at the assignment expression.
|
|
</summary>
|
|
<remarks>
|
|
<paramref name="typeInDeclaration"/> accepts null, to be able to cater to codegen features
|
|
that are about to generate a local declaration and do not have this information to pass in.
|
|
Things (like analyzers) that do have a local declaration already, should pass this in.
|
|
</remarks>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.CodeStyle.TypeStyle.TypeStyleHelper.IsPossibleCreationMethod(Microsoft.CodeAnalysis.IMethodSymbol,Microsoft.CodeAnalysis.ITypeSymbol,Microsoft.CodeAnalysis.INamedTypeSymbol)">
|
|
<summary>
|
|
Looks for types that have static methods that return the same type as the container.
|
|
e.g: int.Parse, XElement.Load, Tuple.Create etc.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.CodeStyle.TypeStyle.TypeStyleHelper.IsPossibleConversionMethod(Microsoft.CodeAnalysis.IMethodSymbol)">
|
|
<summary>
|
|
If we have a method ToXXX and its return type is also XXX, then type name is apparent
|
|
e.g: Convert.ToString.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.EmbeddedLanguages.VirtualChars.CSharpVirtualCharService.TryConvertMultiLineRawStringToVirtualChars(Microsoft.CodeAnalysis.SyntaxToken,Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,System.Boolean)">
|
|
<summary>
|
|
Creates the sequence for the <b>content</b> characters in this <paramref name="token"/>. This will not
|
|
include indentation whitespace that the language specifies is not part of the content.
|
|
</summary>
|
|
<param name="parentExpression">The containing expression for this token. This is needed so that we can
|
|
determine the indentation whitespace based on the last line of the containing multiline literal.</param>
|
|
<param name="tokenIncludeDelimiters">If this token includes the quote (<c>"</c>) characters for the
|
|
delimiters inside of it or not. If so, then those quotes will need to be skipped when determining the
|
|
content</param>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.ArgumentSyntaxExtensions.DetermineParameter(Microsoft.CodeAnalysis.CSharp.Syntax.ArgumentSyntax,Microsoft.CodeAnalysis.SemanticModel,System.Boolean,System.Boolean,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Returns the parameter to which this argument is passed. If <paramref name="allowParams"/>
|
|
is true, the last parameter will be returned if it is params parameter and the index of
|
|
the specified argument is greater than the number of parameters.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.AttributeArgumentSyntaxExtensions.DetermineParameter(Microsoft.CodeAnalysis.CSharp.Syntax.AttributeArgumentSyntax,Microsoft.CodeAnalysis.SemanticModel,System.Boolean,System.Boolean,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Returns the parameter to which this argument is passed. If <paramref name="allowParams"/>
|
|
is true, the last parameter will be returned if it is params parameter and the index of
|
|
the specified argument is greater than the number of parameters.
|
|
</summary>
|
|
<remarks>
|
|
Returns null if the <paramref name="argument"/> is a named argument.
|
|
</remarks>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.ContextQuery.SyntaxTreeExtensions.IsPossibleTupleContext(Microsoft.CodeAnalysis.SyntaxTree,Microsoft.CodeAnalysis.SyntaxToken,System.Int32)">
|
|
<summary>
|
|
Are you possibly typing a tuple type or expression?
|
|
This is used to suppress colon as a completion trigger (so that you can type element names).
|
|
This is also used to recommend some keywords (like var).
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.ContextQuery.SyntaxTreeExtensions.IsPossibleDeconstructionDesignation(Microsoft.CodeAnalysis.SyntaxTree,System.Int32,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Are you possibly in the designation part of a deconstruction?
|
|
This is used to enter suggestion mode (suggestions become soft-selected).
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.ContextQuery.SyntaxTreeExtensions.UnwrapPossibleTuple(Microsoft.CodeAnalysis.SyntaxNode)">
|
|
<summary>
|
|
If inside a parenthesized or tuple expression, unwrap the nestings and return the container.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.ContextQuery.CSharpSyntaxContext.IsAwaitStatementContext(System.Int32,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Is this a possible position for an await statement (`await using` or `await foreach`)?
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.ContextQuery.CSharpSyntaxContext.ComputeIsAwaitKeywordContext(System.Int32,Microsoft.CodeAnalysis.SyntaxToken,Microsoft.CodeAnalysis.SyntaxToken,System.Boolean,System.Boolean,System.Boolean)">
|
|
<summary>
|
|
Determines whether await should be suggested in a given position.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.ExpressionSyntaxExtensions.IsInRefContext(Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,Microsoft.CodeAnalysis.SyntaxNode@)">
|
|
<summary>
|
|
Returns true if this expression is in some <c>ref</c> keyword context. If <see langword="true"/> then
|
|
<paramref name="refParent"/> will be the node containing the <see langword="ref"/> keyword.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.ExpressionSyntaxExtensions.IsExpressionOfArgumentInDeconstruction(Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax)">
|
|
<summary>
|
|
If this declaration or identifier is part of a deconstruction, find the deconstruction.
|
|
If found, returns either an assignment expression or a foreach variable statement.
|
|
Returns null otherwise.
|
|
|
|
copied from SyntaxExtensions.GetContainingDeconstruction
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.ExpressionSyntaxExtensions.CastIfPossible(Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,Microsoft.CodeAnalysis.ITypeSymbol,System.Int32,Microsoft.CodeAnalysis.SemanticModel,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Adds to <paramref name="targetType"/> if it does not contain an anonymous
|
|
type and binds to the same type at the given <paramref name="position"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.ExpressionSyntaxExtensions.ShouldNameExpressionBeTreatedAsExpressionInsteadOfType(Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,Microsoft.CodeAnalysis.SemanticModel,Microsoft.CodeAnalysis.SymbolInfo@,Microsoft.CodeAnalysis.ITypeSymbol@)">
|
|
<summary>
|
|
DeterminesCheck if we're in an interesting situation like this:
|
|
<code>
|
|
int i = 5;
|
|
i. // -- here
|
|
List ml = new List();
|
|
</code>
|
|
The problem is that "i.List" gets parsed as a type. In this case we need to try binding again as if "i" is
|
|
an expression and not a type. In order to do that, we need to speculate as to what 'i' meant if it wasn't
|
|
part of a local declaration's type.
|
|
<para/>
|
|
Another interesting case is something like:
|
|
<code>
|
|
stringList.
|
|
await Test2();
|
|
</code>
|
|
Here "stringList.await" is thought of as the return type of a local function.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.ITypeSymbolExtensions.GenerateExpressionSyntax(Microsoft.CodeAnalysis.ITypeSymbol,System.Boolean)">
|
|
<paramref name="nameSyntax"><see langword="true"/> if only normal name-syntax nodes should be returned.
|
|
<see langword="false"/> if special nodes (like predefined types) can be used.</paramref>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.ITypeSymbolExtensions.TypeSyntaxGeneratorVisitor.AddGlobalAlias(Microsoft.CodeAnalysis.INamespaceOrTypeSymbol,Microsoft.CodeAnalysis.CSharp.Syntax.SimpleNameSyntax)">
|
|
<summary>
|
|
We always unilaterally add "global::" to all named types/namespaces. This
|
|
will then be trimmed off if possible by the simplifier.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Microsoft.CodeAnalysis.CSharp.Extensions.OperatorPrecedence">
|
|
<summary>
|
|
Operator precedence classes from section 7.3.1 of the C# language specification.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.SemanticModelExtensions.DecomposeName(Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax@,System.String@,System.Int32@)">
|
|
<summary>
|
|
Decomposes a name or member access expression into its component parts.
|
|
</summary>
|
|
<param name="expression">The name or member access expression.</param>
|
|
<param name="qualifier">The qualifier (or left-hand-side) of the name expression. This may be null if there is no qualifier.</param>
|
|
<param name="name">The name of the expression.</param>
|
|
<param name="arity">The number of generic type parameters.</param>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.SemanticModelExtensions.GenerateNameForExpression(Microsoft.CodeAnalysis.SemanticModel,Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,System.Boolean,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Given an expression node, tries to generate an appropriate name that can be used for
|
|
that expression.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.SemanticModelExtensions.UnifiesNativeIntegers(Microsoft.CodeAnalysis.SemanticModel)">
|
|
<summary>
|
|
Returns whether or not <see cref="T:System.IntPtr"/> and <see cref="T:System.UIntPtr"/> are exactly identical to <see
|
|
cref="T:System.IntPtr"/> and <see cref="T:System.UIntPtr"/> respectively.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.SemanticModelExtensions.GenerateNameForArgument(Microsoft.CodeAnalysis.SemanticModel,Microsoft.CodeAnalysis.CSharp.Syntax.ArgumentSyntax,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Given an argument node, tries to generate an appropriate name that can be used for that
|
|
argument.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.SyntaxKindExtensions.Contains(Microsoft.CodeAnalysis.CSharp.SyntaxKind[],Microsoft.CodeAnalysis.CSharp.SyntaxKind)">
|
|
<summary>
|
|
Determine if the given <see cref="T:Microsoft.CodeAnalysis.CSharp.SyntaxKind"/> array contains the given kind.
|
|
</summary>
|
|
<param name="kinds">Array to search</param>
|
|
<param name="kind">Sought value</param>
|
|
<returns>True if <paramref name = "kinds"/> contains the value<paramref name= "kind"/>.</returns>
|
|
<remarks>PERF: Not using Array.IndexOf here because it results in a call to IndexOf on the
|
|
default EqualityComparer for SyntaxKind.The default comparer for SyntaxKind is the
|
|
ObjectEqualityComparer which results in boxing allocations.</remarks>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.SyntaxNodeExtensions.GetAllPrecedingTriviaToPreviousToken(Microsoft.CodeAnalysis.SyntaxToken,Microsoft.CodeAnalysis.Text.SourceText,System.Boolean)">
|
|
<summary>
|
|
Returns all of the trivia to the left of this token up to the previous token (concatenates
|
|
the previous token's trailing trivia and this token's leading trivia).
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.SyntaxNodeExtensions.GetRootConditionalAccessExpression(Microsoft.CodeAnalysis.SyntaxNode)">
|
|
<summary>
|
|
<inheritdoc cref="M:Microsoft.CodeAnalysis.LanguageService.ISyntaxFacts.GetRootConditionalAccessExpression(Microsoft.CodeAnalysis.SyntaxNode)"/>
|
|
</summary>>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.SyntaxNodeExtensions.GetEnclosingUsingDirectives(Microsoft.CodeAnalysis.SyntaxNode)">
|
|
<summary>
|
|
Returns the list of using directives that affect <paramref name="node"/>. The list will be returned in
|
|
top down order.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.SyntaxNodeExtensions.ContainsInterleavedDirective(Microsoft.CodeAnalysis.SyntaxNode,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Returns true if the passed in node contains an interleaved pp directive.
|
|
|
|
i.e. The following returns false:
|
|
|
|
void Goo() {
|
|
#if true
|
|
#endif
|
|
}
|
|
|
|
#if true
|
|
void Goo() {
|
|
}
|
|
#endif
|
|
|
|
but these return true:
|
|
|
|
#if true
|
|
void Goo() {
|
|
#endif
|
|
}
|
|
|
|
void Goo() {
|
|
#if true
|
|
}
|
|
#endif
|
|
|
|
#if true
|
|
void Goo() {
|
|
#else
|
|
}
|
|
#endif
|
|
|
|
i.e. the method returns true if it contains a PP directive that belongs to a grouping
|
|
constructs (like #if/#endif or #region/#endregion), but the grouping construct isn't
|
|
entirely contained within the span of the node.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.SyntaxNodeExtensions.ContainsInterleavedDirective(Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.Text.TextSpan,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Similar to <see cref="M:Microsoft.CodeAnalysis.CSharp.Extensions.SyntaxNodeExtensions.ContainsInterleavedDirective(Microsoft.CodeAnalysis.SyntaxNode,System.Threading.CancellationToken)"/> except that the span to check
|
|
for interleaved directives can be specified separately to the node passed in.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.SyntaxNodeExtensions.SplitNodesOnPreprocessorBoundaries``1(System.Collections.Generic.IEnumerable{``0},System.Threading.CancellationToken)">
|
|
<summary>
|
|
Breaks up the list of provided nodes, based on how they are interspersed with pp
|
|
directives, into groups. Within these groups nodes can be moved around safely, without
|
|
breaking any pp constructs.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.SyntaxTokenExtensions.CouldBeKeyword(Microsoft.CodeAnalysis.SyntaxToken)">
|
|
<summary>
|
|
Returns true if this token is something that looks like a C# keyword. This includes
|
|
actual keywords, contextual keywords, and even 'var' and 'dynamic'
|
|
</summary>
|
|
<param name="token"></param>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.SyntaxTokenExtensions.IsFirstTokenOnLine(Microsoft.CodeAnalysis.SyntaxToken,Microsoft.CodeAnalysis.Text.SourceText)">
|
|
<summary>
|
|
Determines whether the given SyntaxToken is the first token on a line in the specified SourceText.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.SyntaxTokenExtensions.GetAllTrailingTrivia(Microsoft.CodeAnalysis.SyntaxToken)">
|
|
<summary>
|
|
Retrieves all trivia after this token, including it's trailing trivia and
|
|
the leading trivia of the next token.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.SyntaxTokenExtensions.FindLastTokenOfPartialGenericName(Microsoft.CodeAnalysis.SyntaxToken)">
|
|
<summary>
|
|
Lexically, find the last token that looks like it's part of this generic name.
|
|
</summary>
|
|
<param name="genericIdentifier">The "name" of the generic identifier, last token before
|
|
the "&"</param>
|
|
<returns>The last token in the name</returns>
|
|
<remarks>This is related to the code in SyntaxTreeExtensions.IsInPartiallyWrittenGeneric</remarks>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.SyntaxTriviaListExtensions.TakeRange(Microsoft.CodeAnalysis.SyntaxTriviaList,System.Int32,System.Int32)">
|
|
<summary>
|
|
Takes an INCLUSIVE range of trivia from the trivia list.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.TypeSyntaxExtensions.IsTypeInferred(Microsoft.CodeAnalysis.CSharp.Syntax.TypeSyntax,Microsoft.CodeAnalysis.SemanticModel)">
|
|
<summary>
|
|
Determines whether the specified TypeSyntax is actually 'var'.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.BasePropertyDeclarationSyntaxExtensions.TryGetSemicolonToken(Microsoft.CodeAnalysis.CSharp.Syntax.BasePropertyDeclarationSyntax)">
|
|
<summary>
|
|
Available if <paramref name="node"/> is <see cref="T:Microsoft.CodeAnalysis.CSharp.Syntax.PropertyDeclarationSyntax"/> or <see cref="T:Microsoft.CodeAnalysis.CSharp.Syntax.IndexerDeclarationSyntax"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.BasePropertyDeclarationSyntaxExtensions.TryWithSemicolonToken(Microsoft.CodeAnalysis.CSharp.Syntax.BasePropertyDeclarationSyntax,Microsoft.CodeAnalysis.SyntaxToken)">
|
|
<summary>
|
|
Available if <paramref name="node"/> is <see cref="T:Microsoft.CodeAnalysis.CSharp.Syntax.PropertyDeclarationSyntax"/> or <see cref="T:Microsoft.CodeAnalysis.CSharp.Syntax.IndexerDeclarationSyntax"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Extensions.BasePropertyDeclarationSyntaxExtensions.TryWithExpressionBody(Microsoft.CodeAnalysis.CSharp.Syntax.BasePropertyDeclarationSyntax,Microsoft.CodeAnalysis.CSharp.Syntax.ArrowExpressionClauseSyntax)">
|
|
<summary>
|
|
Available if <paramref name="node"/> is <see cref="T:Microsoft.CodeAnalysis.CSharp.Syntax.PropertyDeclarationSyntax"/> or <see cref="T:Microsoft.CodeAnalysis.CSharp.Syntax.IndexerDeclarationSyntax"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.Shared.Extensions.LanguageVersionExtensions.CSharpNext">
|
|
<remarks>
|
|
Corresponds to Microsoft.CodeAnalysis.CSharp.LanguageVersionFacts.CSharpNext.
|
|
</remarks>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.CSharpSemanticFacts.GetSymbolInfo(Microsoft.CodeAnalysis.SemanticModel,Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.SyntaxToken,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Returns the best symbols found that the provided token binds to. This is similar to <see
|
|
cref="M:Microsoft.CodeAnalysis.ModelExtensions.GetSymbolInfo(Microsoft.CodeAnalysis.SemanticModel,Microsoft.CodeAnalysis.SyntaxNode,System.Threading.CancellationToken)"/>, but sometimes employs
|
|
heuristics to provide a better result for tokens that users conceptually think bind to things, but which the
|
|
compiler does not necessarily return results for.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Microsoft.CodeAnalysis.CSharp.Utilities.FormattingRangeHelper">
|
|
<summary>
|
|
this help finding a range of tokens to format based on given ending token
|
|
</summary>
|
|
</member>
|
|
<member name="T:Microsoft.CodeAnalysis.CSharp.Utilities.SpeculationAnalyzer">
|
|
<summary>
|
|
Helper class to analyze the semantic effects of a speculated syntax node replacement on the parenting nodes.
|
|
Given an expression node from a syntax tree and a new expression from a different syntax tree,
|
|
it replaces the expression with the new expression to create a speculated syntax tree.
|
|
It uses the original tree's semantic model to create a speculative semantic model and verifies that
|
|
the syntax replacement doesn't break the semantics of any parenting nodes of the original expression.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Utilities.SpeculationAnalyzer.#ctor(Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,Microsoft.CodeAnalysis.SemanticModel,System.Threading.CancellationToken,System.Boolean,System.Boolean)">
|
|
<summary>
|
|
Creates a semantic analyzer for speculative syntax replacement.
|
|
</summary>
|
|
<param name="expression">Original expression to be replaced.</param>
|
|
<param name="newExpression">New expression to replace the original expression.</param>
|
|
<param name="semanticModel">Semantic model of <paramref name="expression"/> node's syntax tree.</param>
|
|
<param name="cancellationToken">Cancellation token.</param>
|
|
<param name="skipVerificationForReplacedNode">
|
|
True if semantic analysis should be skipped for the replaced node and performed starting from parent of the original and replaced nodes.
|
|
This could be the case when custom verifications are required to be done by the caller or
|
|
semantics of the replaced expression are different from the original expression.
|
|
</param>
|
|
<param name="failOnOverloadResolutionFailuresInOriginalCode">
|
|
True if semantic analysis should fail when any of the invocation expression ancestors of <paramref name="expression"/> in original code has overload resolution failures.
|
|
</param>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Utilities.SpeculationAnalyzer.ReplacementChangesSemanticsOfUnchangedLambda(Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax)">
|
|
<summary>
|
|
Determines whether performing the syntax replacement in one of the sibling nodes of the given lambda expressions will change the lambda binding semantics.
|
|
This is done by first determining the lambda parameters whose type differs in the replaced lambda node.
|
|
For each of these parameters, we find the descendant identifier name nodes in the lambda body and check if semantics of any of the parenting nodes of these
|
|
identifier nodes have changed in the replaced lambda.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Utilities.SpeculationAnalyzer.ReplacementBreaksBoxingInConditionalExpression(Microsoft.CodeAnalysis.TypeInfo,Microsoft.CodeAnalysis.TypeInfo,Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax)">
|
|
<summary>
|
|
Checks if the conversion might change the resultant boxed type.
|
|
Similar boxing checks are performed elsewhere, but in this case we need to perform the check on the entire conditional expression.
|
|
This will make sure the resultant cast is proper for the type of the conditional expression.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.Utilities.TypeStyleResult.IsStylePreferred">
|
|
<summary>
|
|
Whether or not converting would transition the code to the style the user prefers. i.e. if the user likes
|
|
<c>var</c> for everything, and you have <c>int i = 0</c> then <see cref="F:Microsoft.CodeAnalysis.CSharp.Utilities.TypeStyleResult.IsStylePreferred"/> will be
|
|
<see langword="true"/>. However, if the user likes <c>var</c> for everything and you have <c>var i = 0</c>,
|
|
then it's still possible to convert that, it would just be <see langword="false"/> for
|
|
<see cref="F:Microsoft.CodeAnalysis.CSharp.Utilities.TypeStyleResult.IsStylePreferred"/> because it goes against the user's preferences.
|
|
</summary>
|
|
<remarks>
|
|
<para>In general, most features should only convert the type if <see cref="F:Microsoft.CodeAnalysis.CSharp.Utilities.TypeStyleResult.IsStylePreferred"/> is
|
|
<see langword="true"/>. The one exception is the refactoring, which is explicitly there to still let people
|
|
convert things quickly, even if it's going against their stated style.</para>
|
|
</remarks>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Utilities.CSharpTypeStyleHelper.State.IsTypeApparentInDeclaration(Microsoft.CodeAnalysis.CSharp.Syntax.VariableDeclarationSyntax,Microsoft.CodeAnalysis.SemanticModel,Microsoft.CodeAnalysis.CSharp.CodeStyle.TypeStyle.UseVarPreference,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Returns true if type information could be gleaned by simply looking at the given statement.
|
|
This typically means that the type name occurs in right hand side of an assignment.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Utilities.CSharpTypeStyleHelper.State.IsPredefinedTypeInDeclaration(Microsoft.CodeAnalysis.SyntaxNode,Microsoft.CodeAnalysis.SemanticModel)">
|
|
<summary>
|
|
checks if the type represented by the given symbol is one of the
|
|
simple types defined in the compiler.
|
|
</summary>
|
|
<remarks>
|
|
From the IDE perspective, we also include object and string to be simplified
|
|
to var. <see cref="M:Microsoft.CodeAnalysis.CSharp.SyntaxFacts.IsPredefinedType(Microsoft.CodeAnalysis.CSharp.SyntaxKind)"/> considers string
|
|
and object but the compiler's implementation of IsIntrinsicType does not.
|
|
</remarks>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Utilities.CSharpTypeStyleHelper.State.IsMadeOfSpecialTypes(Microsoft.CodeAnalysis.ITypeSymbol)">
|
|
<summary>
|
|
Returns true for type that are arrays/nullable/pointer types of special types
|
|
</summary>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Utilities.CSharpUseExplicitTypeHelper.AssignmentSupportsStylePreference(Microsoft.CodeAnalysis.SyntaxToken,Microsoft.CodeAnalysis.CSharp.Syntax.TypeSyntax,Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,Microsoft.CodeAnalysis.SemanticModel,Microsoft.CodeAnalysis.CSharp.Simplification.CSharpSimplifierOptions,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Analyzes the assignment expression and rejects a given declaration if it is unsuitable for explicit typing.
|
|
</summary>
|
|
<returns>
|
|
false, if explicit typing cannot be used.
|
|
true, otherwise.
|
|
</returns>
|
|
</member>
|
|
<member name="M:Microsoft.CodeAnalysis.CSharp.Utilities.CSharpUseImplicitTypeHelper.AssignmentSupportsStylePreference(Microsoft.CodeAnalysis.SyntaxToken,Microsoft.CodeAnalysis.CSharp.Syntax.TypeSyntax,Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,Microsoft.CodeAnalysis.SemanticModel,Microsoft.CodeAnalysis.CSharp.Simplification.CSharpSimplifierOptions,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Analyzes the assignment expression and rejects a given declaration if it is unsuitable for implicit typing.
|
|
</summary>
|
|
<returns>
|
|
false, if implicit typing cannot be used.
|
|
true, otherwise.
|
|
</returns>
|
|
</member>
|
|
<member name="T:Microsoft.CodeAnalysis.CSharp.Editing.CSharpImportAdder.ConflictFinder">
|
|
<summary>
|
|
Walks the portion of the tree we're adding imports to looking to see if those imports could likely cause
|
|
conflicts with existing code. Note: this is a best-effort basis, and the goal is to catch reasonable
|
|
conflicts effectively. There may be cases that do slip through that we can adjust for in the future. Those
|
|
cases should be assessed to see how reasonable/likely they are. I.e. if it's just a hypothetical case with
|
|
no users being hit, then that's far less important than if we have a reasonable coding pattern that would be
|
|
impacted by adding an import to a normal namespace.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.Editing.CSharpImportAdder.ConflictFinder._importedTypes">
|
|
<summary>
|
|
A mapping containing the simple names and arity of all imported types, mapped to the import that they're
|
|
brought in by.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CSharp.Editing.CSharpImportAdder.ConflictFinder._importedExtensionMethods">
|
|
<summary>
|
|
A mapping containing the simple names of all imported extension methods, mapped to the import that
|
|
they're brought in by. This doesn't keep track of arity because methods can be called with type
|
|
arguments.
|
|
</summary>
|
|
<remarks>
|
|
We could consider adding more information here (for example the min/max number of args that this can be
|
|
called with). That could then be used to check if there could be a conflict. However, that's likely
|
|
more complexity than we need currently. But it is always something we can do in the future.
|
|
</remarks>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpWorkspaceResources.Only_attributes_constructor_initializers_expressions_or_statements_can_be_made_explicit">
|
|
<summary>Only attributes, constructor initializers, expressions or statements can be made explicit</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpWorkspaceResources.Implement_Interface">
|
|
<summary>Implement Interface</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpWorkspaceResources.Remove_and_Sort_Usings">
|
|
<summary>R&emove and Sort Usings</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpWorkspaceResources.Sort_Usings">
|
|
<summary>&Sort Usings</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpWorkspaceResources.CSharp_Formatting_Rules">
|
|
<summary>C# Formatting Rules</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpWorkspaceResources.CSharp_Coding_Conventions">
|
|
<summary>C# Coding Conventions</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpCompilerExtensionsResources.var_preferences">
|
|
<summary>var preferences</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpCompilerExtensionsResources.Expression_bodied_members">
|
|
<summary>Expression-bodied members</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpCompilerExtensionsResources.Pattern_matching_preferences">
|
|
<summary>Pattern matching preferences</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpCompilerExtensionsResources.Null_checking_preferences">
|
|
<summary>Null-checking preferences</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpCompilerExtensionsResources.Code_block_preferences">
|
|
<summary>Code-block preferences</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpCompilerExtensionsResources.using_directive_preferences">
|
|
<summary>'using' directive preferences</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpCompilerExtensionsResources.Expected_string_or_char_literal">
|
|
<summary>Expected string or char literal</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpCompilerExtensionsResources.EditorConfig_option_0_contains_unrecognized_value_1">
|
|
<summary>EditorConfig option '{0}' contains unrecognized value '{1}'</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpCompilerExtensionsResources.Indentation_preferences">
|
|
<summary>Indentation preferences</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpCompilerExtensionsResources.Space_preferences">
|
|
<summary>Space preferences</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpCompilerExtensionsResources.Wrapping_preferences">
|
|
<summary>Wrapping preferences</summary>
|
|
</member>
|
|
<member name="P:Microsoft.CodeAnalysis.CSharp.CSharpWorkspaceExtensionsResources.EmptyResource">
|
|
<summary>Remove this value when another is added.</summary>
|
|
</member>
|
|
<member name="T:Microsoft.CodeAnalysis.CodeStyle.PreferBracesPreference">
|
|
<summary>
|
|
Defines the known values for <see cref="F:Microsoft.CodeAnalysis.CSharp.CodeStyle.CSharpCodeStyleOptions.PreferBraces"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CodeStyle.PreferBracesPreference.None">
|
|
<summary>
|
|
Braces are allowed, but not preferred.
|
|
</summary>
|
|
<remarks>
|
|
<para>The value <c>0</c> is important for serialization compatibility in
|
|
<see cref="M:Microsoft.CodeAnalysis.CodeStyle.CodeStyleOption2`1.FromXElement(System.Xml.Linq.XElement)"/>. Prior to the use of this enum, the serialized value
|
|
was the <see cref="T:System.Boolean"/> value <see langword="false"/>.</para>
|
|
</remarks>
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CodeStyle.PreferBracesPreference.Always">
|
|
<summary>
|
|
<para>Braces are preferred where allowed except in the following limited situations:</para>
|
|
|
|
<list type="bullet">
|
|
<item><description>Braces are not required for the embedded statement of an <c>else</c> clause when the embedded statement is an <c>if</c> statement.</description></item>
|
|
<item><description>In a sequence of consecutive <c>using</c> statements, only the last statement requires braces.</description></item>
|
|
<item><description>In a sequence of consecutive <c>lock</c> statements, only the last statement requires braces.</description></item>
|
|
<item><description>In a sequence of consecutive <c>fixed</c> statements, only the last statement requires braces.</description></item>
|
|
</list>
|
|
</summary>
|
|
<remarks>
|
|
<para>The value <c>1</c> is important for serialization compatibility in
|
|
<see cref="M:Microsoft.CodeAnalysis.CodeStyle.CodeStyleOption2`1.FromXElement(System.Xml.Linq.XElement)"/>. Prior to the use of this enum, the serialized value
|
|
was the <see cref="T:System.Boolean"/> value <see langword="true"/>.</para>
|
|
</remarks>
|
|
</member>
|
|
<member name="F:Microsoft.CodeAnalysis.CodeStyle.PreferBracesPreference.WhenMultiline">
|
|
<summary>
|
|
<para>Braces are always allowed, and generally preferred except in limited situations involving single-line
|
|
statements and expressions:</para>
|
|
|
|
<list type="bullet">
|
|
<item><description>Braces may be omitted in the cases described for <see cref="F:Microsoft.CodeAnalysis.CodeStyle.PreferBracesPreference.Always"/>.</description></item>
|
|
<item><description>Braces may be omitted when the entire statement is placed on one line.</description></item>
|
|
<item><description>For a statement that contains one or more embedded statements, braces may be omitted when
|
|
every embedded statement fits on one line, and the part preceding the embedded statement is placed on one
|
|
line. If any embedded statement uses braces, braces are preferred for all embedded statements of the same
|
|
parent statement. For the purposes of evaluating this rule, if the embedded statement following an
|
|
<c>else</c> keyword is an if statement, the embedded statements of the nested if statement are treated as
|
|
children of the parent statement of the <c>else</c> keyword.</description></item>
|
|
</list>
|
|
</summary>
|
|
</member>
|
|
</members>
|
|
</doc>
|