Поделиться через


CSharpExtensions Класс

Определение

public ref class CSharpExtensions abstract sealed
public static class CSharpExtensions
type CSharpExtensions = class
Public Module CSharpExtensions
Наследование
CSharpExtensions

Методы

AnalyzeControlFlow(SemanticModel, StatementSyntax, StatementSyntax)

Анализ потока управления в части тела метода.

AnalyzeControlFlow(SemanticModel, StatementSyntax)

Анализ потока управления в части тела метода.

AnalyzeDataFlow(SemanticModel, ConstructorInitializerSyntax)

Анализ потока данных в .ConstructorInitializerSyntax

AnalyzeDataFlow(SemanticModel, ExpressionSyntax)

Анализ потока данных в .ExpressionSyntax

AnalyzeDataFlow(SemanticModel, PrimaryConstructorBaseTypeSyntax)

Анализ потока данных в инициализаторе ArgumentList .

AnalyzeDataFlow(SemanticModel, StatementSyntax, StatementSyntax)

Анализ потока данных в части тела метода.

AnalyzeDataFlow(SemanticModel, StatementSyntax)

Анализ потока данных в части тела метода.

ClassifyConversion(Compilation, ITypeSymbol, ITypeSymbol)
ClassifyConversion(SemanticModel, ExpressionSyntax, ITypeSymbol, Boolean)

Определяет, какой тип преобразования, если таковой имеется, будет использоваться при преобразовании данного выражения в заданный тип. Если параметр isExplicitInSource имеет значение true, то создается преобразование, которое будет использоваться, если преобразование было выполнено для выражения приведения.

ClassifyConversion(SemanticModel, Int32, ExpressionSyntax, ITypeSymbol, Boolean)

Определяет, какой тип преобразования, если таковой имеется, будет использоваться при преобразовании данного выражения в заданный тип. Если параметр isExplicitInSource имеет значение true, то создается преобразование, которое будет использоваться, если преобразование было выполнено для выражения приведения.

GetAliasInfo(SemanticModel, IdentifierNameSyntax, CancellationToken)

Если nameSyntax разрешается в имя псевдонима, возвращается значение AliasSymbol, соответствующее A. В противном случае возвращается значение NULL.

GetAwaitExpressionInfo(SemanticModel, AwaitExpressionSyntax)
GetCollectionInitializerSymbolInfo(SemanticModel, ExpressionSyntax, CancellationToken)

Возвращает символы метода Add, если таковые есть, соответствуют заданному синтаксису выражения в Initializer.

GetCompilationUnitRoot(SyntaxTree, CancellationToken)
GetConstantValue(SemanticModel, ExpressionSyntax, CancellationToken)
GetConversion(IConversionOperation)

Получает базовые Conversion сведения из этого IConversionOperation. Он IConversionOperation должен быть создан на основе кода CSharp.

GetConversion(SemanticModel, SyntaxNode, CancellationToken)
GetDeclaredSymbol(SemanticModel, AccessorDeclarationSyntax, CancellationToken)

При наличии узла синтаксиса, объявляющего метод доступа к свойству или члену, получите соответствующий символ.

GetDeclaredSymbol(SemanticModel, AnonymousObjectCreationExpressionSyntax, CancellationToken)

Учитывая синтаксический узел выражения создания анонимного объекта, получите символ анонимного типа объекта.

GetDeclaredSymbol(SemanticModel, AnonymousObjectMemberDeclaratorSyntax, CancellationToken)

При использовании узла синтаксиса инициализатора создания анонимного объекта получите символ свойства анонимного объекта.

GetDeclaredSymbol(SemanticModel, ArgumentSyntax, CancellationToken)

С учетом синтаксического узла аргумента кортежа получите символ элемента кортежа.

GetDeclaredSymbol(SemanticModel, BaseMethodDeclarationSyntax, CancellationToken)

При наличии синтаксиса объявления базового метода получите соответствующий символ метода.

GetDeclaredSymbol(SemanticModel, BasePropertyDeclarationSyntax, CancellationToken)

При наличии узла синтаксиса, объявляющего свойство, индексатор или событие, получите соответствующий объявленный символ.

GetDeclaredSymbol(SemanticModel, BaseTypeDeclarationSyntax, CancellationToken)

При объявлении типа получите соответствующий символ типа.

GetDeclaredSymbol(SemanticModel, CatchDeclarationSyntax, CancellationToken)

При объявлении catch получите символ для переменной исключения.

GetDeclaredSymbol(SemanticModel, CompilationUnitSyntax, CancellationToken)

Учитывая синтаксис единицы компиляции, получите соответствующий символ точки входа Simple Program.

GetDeclaredSymbol(SemanticModel, DelegateDeclarationSyntax, CancellationToken)

При объявлении делегата получите соответствующий символ типа.

GetDeclaredSymbol(SemanticModel, EnumMemberDeclarationSyntax, CancellationToken)

При объявлении члена перечисления получите соответствующий символ поля.

GetDeclaredSymbol(SemanticModel, EventDeclarationSyntax, CancellationToken)

При наличии узла синтаксиса, объявляющего (настраиваемое) событие, получите соответствующий символ события.

GetDeclaredSymbol(SemanticModel, ExternAliasDirectiveSyntax, CancellationToken)

При объявлении псевдонима extern получите соответствующий символ для введенного псевдонима.

GetDeclaredSymbol(SemanticModel, FileScopedNamespaceDeclarationSyntax, CancellationToken)

При наличии узла синтаксиса объявления пространства имен получите соответствующий символ пространства имен для сборки объявления.

GetDeclaredSymbol(SemanticModel, ForEachStatementSyntax, CancellationToken)

При использовании оператора foreach получите символ для переменной итерации.

GetDeclaredSymbol(SemanticModel, IndexerDeclarationSyntax, CancellationToken)

При наличии узла синтаксиса, объявляющего индексатор, получите соответствующий объявленный символ.

GetDeclaredSymbol(SemanticModel, JoinIntoClauseSyntax, CancellationToken)

Получение переменной диапазона запроса, объявленной в предложении join into.

GetDeclaredSymbol(SemanticModel, LabeledStatementSyntax, CancellationToken)

При наличии синтаксиса оператора с меткой получите соответствующий символ метки.

GetDeclaredSymbol(SemanticModel, LocalFunctionStatementSyntax, CancellationToken)

При наличии синтаксиса объявления локальной функции получите соответствующий символ.

GetDeclaredSymbol(SemanticModel, MemberDeclarationSyntax, CancellationToken)

При наличии синтаксиса объявления элемента получите соответствующий символ.

GetDeclaredSymbol(SemanticModel, NamespaceDeclarationSyntax, CancellationToken)

При наличии узла синтаксиса объявления пространства имен получите соответствующий символ пространства имен для сборки объявления.

GetDeclaredSymbol(SemanticModel, ParameterSyntax, CancellationToken)

При наличии узла синтаксиса объявления параметра получите соответствующий символ.

GetDeclaredSymbol(SemanticModel, PropertyDeclarationSyntax, CancellationToken)

При наличии узла синтаксиса, объявляющего свойство, получите соответствующий объявленный символ.

GetDeclaredSymbol(SemanticModel, QueryClauseSyntax, CancellationToken)
GetDeclaredSymbol(SemanticModel, QueryContinuationSyntax, CancellationToken)

Возвращает переменную диапазона запроса, объявленную в предложении продолжения запроса.

GetDeclaredSymbol(SemanticModel, SingleVariableDesignationSyntax, CancellationToken)

При наличии синтаксиса декларатора переменных получите соответствующий символ.

GetDeclaredSymbol(SemanticModel, SwitchLabelSyntax, CancellationToken)

При наличии синтаксиса метки переключателя получите соответствующий символ метки.

GetDeclaredSymbol(SemanticModel, TupleElementSyntax, CancellationToken)

Учитывая синтаксис элемента кортежа, получите соответствующий символ.

GetDeclaredSymbol(SemanticModel, TupleExpressionSyntax, CancellationToken)

Учитывая синтаксический узел выражения кортежа, получите символ типа кортежа.

GetDeclaredSymbol(SemanticModel, TypeParameterSyntax, CancellationToken)

При объявлении параметра типа (поле или метод) получите соответствующий символ.

GetDeclaredSymbol(SemanticModel, UsingDirectiveSyntax, CancellationToken)

При объявлении using получите соответствующий символ для введенного псевдонима using.

GetDeclaredSymbol(SemanticModel, VariableDeclaratorSyntax, CancellationToken)

При наличии синтаксиса декларатора переменных получите соответствующий символ.

GetDeconstructionInfo(SemanticModel, AssignmentExpressionSyntax)
GetDeconstructionInfo(SemanticModel, ForEachVariableStatementSyntax)
GetElementConversion(ISpreadOperation)

Получает сведения о базовом элементе Conversion из данного ISpreadOperationобъекта .

GetFirstDirective(SyntaxNode, Func<DirectiveTriviaSyntax,Boolean>)

Возвращает первую директиву дерева, корняемого этим узлом.

GetForEachStatementInfo(SemanticModel, CommonForEachStatementSyntax)
GetForEachStatementInfo(SemanticModel, ForEachStatementSyntax)
GetInConversion(ICompoundAssignmentOperation)

Получает базовые Conversion сведения из этого ICompoundAssignmentOperation. Это преобразование применяется перед применением оператора к результату этого преобразования и Value.

GetIndexerGroup(SemanticModel, ExpressionSyntax, CancellationToken)

Возвращает список доступных не скрытых индексаторов, которые можно вызвать с помощью заданного выражения в качестве получателя.

GetLastDirective(SyntaxNode, Func<DirectiveTriviaSyntax,Boolean>)

Возвращает последнюю директиву дерева, укореняемого этим узлом.

GetMemberGroup(SemanticModel, AttributeSyntax, CancellationToken)
GetMemberGroup(SemanticModel, ConstructorInitializerSyntax, CancellationToken)
GetMemberGroup(SemanticModel, ExpressionSyntax, CancellationToken)
GetOutConversion(ICompoundAssignmentOperation)

Получает базовые Conversion сведения из этого ICompoundAssignmentOperation. Это преобразование применяется после применения оператора , прежде чем результат назначается Target.

GetQueryClauseInfo(SemanticModel, QueryClauseSyntax, CancellationToken)

Возвращает семантические сведения, связанные с предложением запроса.

GetSpeculativeAliasInfo(SemanticModel, Int32, IdentifierNameSyntax, SpeculativeBindingOption)

Привязывает имя в контексте указанного расположения и проверяет, разрешается ли оно в псевдоним. Если это так, верните соответствующий ему aliasSymbol. В противном случае возвращается значение NULL.

GetSpeculativeConversion(SemanticModel, Int32, ExpressionSyntax, SpeculativeBindingOption)
GetSpeculativeSymbolInfo(SemanticModel, Int32, AttributeSyntax)

Привяжите атрибут в контексте указанного расположения и получите семантические сведения, такие как тип, символы и диагностика. Этот метод используется для получения семантических сведений об атрибуте, который фактически не отображается в исходном коде.

GetSpeculativeSymbolInfo(SemanticModel, Int32, ConstructorInitializerSyntax)

Привяжите инициализатор конструктора в контексте указанного расположения и получите семантические сведения, такие как тип, символы и диагностика. Этот метод используется для получения семантических сведений об инициализаторе конструктора, который фактически не отображался в исходном коде.

ПРИМЕЧАНИЕ. Это будет работать только в тех местах, где уже есть инициализатор конструктора.

GetSpeculativeSymbolInfo(SemanticModel, Int32, CrefSyntax, SpeculativeBindingOption)

Привязывает выражение CrefSyntax в контексте указанного расположения и получает сведения о символах. Этот метод используется для получения сведений о символах выражения, которое фактически не отображается в исходном коде.

GetSpeculativeSymbolInfo(SemanticModel, Int32, ExpressionSyntax, SpeculativeBindingOption)

Привязывает выражение к контексту указанного расположения и получает сведения о символах. Этот метод используется для получения сведений о символах выражения, которое фактически не отображается в исходном коде.

GetSpeculativeSymbolInfo(SemanticModel, Int32, PrimaryConstructorBaseTypeSyntax)

Привяжите инициализатор конструктора в контексте указанного расположения и получите семантические сведения о символах. Этот метод используется для получения семантических сведений об инициализаторе конструктора, который фактически не отображался в исходном коде.

ПРИМЕЧАНИЕ. Это будет работать только в тех местах, где уже есть инициализатор конструктора. PrimaryConstructorBaseTypeSyntax.

GetSpeculativeTypeInfo(SemanticModel, Int32, ExpressionSyntax, SpeculativeBindingOption)

Привязывает выражение к контексту указанного расположения и получает сведения о типе. Этот метод используется для получения сведений о типе выражения, которое фактически не отображается в исходном коде.

GetSymbolInfo(SemanticModel, AttributeSyntax, CancellationToken)

Возвращает символы , если таковые есть, заданный синтаксис атрибута, привязанный к в программе.

GetSymbolInfo(SemanticModel, ConstructorInitializerSyntax, CancellationToken)

Возвращает символы , если таковые есть, синтаксис заданного инициализатора конструктора, к которому привязан в программе.

GetSymbolInfo(SemanticModel, CrefSyntax, CancellationToken)

Возвращает семантические сведения, связанные с ссылкой на комментарий документации.

GetSymbolInfo(SemanticModel, ExpressionSyntax, CancellationToken)

Возвращает символы , если таковые есть, заданный синтаксис выражения, к которому привязан в программе.

Этот метод никогда не возвращает aliasSymbol. Вместо этого будет возвращено значение, на который ссылается псевдоним. Чтобы получить сведения о псевдонимах, вызовите Метод GetAliasInfo.

При привязке имени типа C в выражении "new C(...)" возвращается фактический конструктор, привязанный к (или весь конструктор, если разрешение перегрузки не выполнено). Это происходит до тех пор, пока C однозначно привязывается к одному типу с конструктором. Если C неоднозначно привязывается к нескольким типам или C привязывается к статическому классу, возвращаются типы.

GetSymbolInfo(SemanticModel, OrderingSyntax, CancellationToken)

Получает семантические сведения для предложения упорядочения в предложении запроса orderby.

GetSymbolInfo(SemanticModel, PrimaryConstructorBaseTypeSyntax, CancellationToken)

Возвращает символы , если таковые есть, синтаксис заданного инициализатора конструктора, к которому привязан в программе.

GetSymbolInfo(SemanticModel, SelectOrGroupClauseSyntax, CancellationToken)

Возвращает семантические сведения, связанные с предложением select или group.

GetTypeInfo(SemanticModel, AttributeSyntax, CancellationToken)

Возвращает сведения о типе атрибута.

GetTypeInfo(SemanticModel, ConstructorInitializerSyntax, CancellationToken)

Возвращает сведения о типе инициализатора конструктора.

GetTypeInfo(SemanticModel, ExpressionSyntax, CancellationToken)

Возвращает сведения о типе выражения.

GetTypeInfo(SemanticModel, SelectOrGroupClauseSyntax, CancellationToken)
Insert(SyntaxTokenList, Int32, SyntaxToken[])

Вставьте один или несколько маркеров в список по указанному индексу.

IsContextualKeyword(SyntaxToken)
IsKeyword(SyntaxToken)
IsReservedKeyword(SyntaxToken)
IsVerbatimIdentifier(SyntaxToken)
IsVerbatimStringLiteral(SyntaxToken)
Kind(SyntaxNode)

Возвращает SyntaxKind значение для SyntaxNode свойства from RawKind .

Kind(SyntaxNodeOrToken)

Возвращает SyntaxKind значение для SyntaxNode свойства from RawKind .

Kind(SyntaxToken)

Возвращает SyntaxKind значение для SyntaxToken свойства from RawKind .

Kind(SyntaxTrivia)

Возвращает SyntaxKind значение для SyntaxTrivia свойства from RawKind .

ReplaceTrivia(SyntaxToken, IEnumerable<SyntaxTrivia>, Func<SyntaxTrivia,SyntaxTrivia,SyntaxTrivia>)

Создает новый токен с указанным старым trivia, замененным вычисляемой новой trivia.

ReplaceTrivia(SyntaxToken, SyntaxTrivia, SyntaxTrivia)

Создает новый токен с указанным старым trivia, замененным новым trivia. Старые мелочи могут отображаться в начальных или конечных мелочах маркера.

TryGetSpeculativeSemanticModel(SemanticModel, Int32, ArrowExpressionClauseSyntax, SemanticModel)

Получение объекта SemanticModel, связанного с телом выражения, которое не отображалось в этом исходном коде. Это можно использовать для получения подробных семантических сведений о подчастиях тела выражения, которые не отображаются в исходном коде.

TryGetSpeculativeSemanticModel(SemanticModel, Int32, AttributeSyntax, SemanticModel)

Получите объект SemanticModel, связанный с атрибутом, который не отображался в этом исходном коде. Это можно использовать для получения подробных семантических сведений о подчастиях атрибута, которые не отображаются в исходном коде.

TryGetSpeculativeSemanticModel(SemanticModel, Int32, ConstructorInitializerSyntax, SemanticModel)

Получите объект SemanticModel, связанный с инициализатором конструктора, который не отображался в этом исходном коде. Его можно использовать для получения подробных семантических сведений о вложенных частях инициализатора конструктора, которые не отображаются в исходном коде.

ПРИМЕЧАНИЕ. Это будет работать только в тех местах, где уже есть инициализатор конструктора.

TryGetSpeculativeSemanticModel(SemanticModel, Int32, CrefSyntax, SemanticModel)

Получите объект SemanticModel, связанный с узлом синтаксиса cref, который не отображался в этом исходном коде. Его можно использовать для получения подробных семантических сведений о вложенных частях синтаксиса cref, которые не отображаются в исходном коде.

TryGetSpeculativeSemanticModel(SemanticModel, Int32, EqualsValueClauseSyntax, SemanticModel)

Получите объект SemanticModel, связанный с инициализатором, который не отображался в этом исходном коде. Его можно использовать для получения подробных семантических сведений о подзаголовке инициализатора поля или значении параметра по умолчанию, которые не отображаются в исходном коде.

TryGetSpeculativeSemanticModel(SemanticModel, Int32, PrimaryConstructorBaseTypeSyntax, SemanticModel)

Получите объект SemanticModel, связанный с инициализатором конструктора, который не отображался в этом исходном коде. Его можно использовать для получения подробных семантических сведений о вложенных частях инициализатора конструктора, которые не отображаются в исходном коде.

ПРИМЕЧАНИЕ. Это будет работать только в тех местах, где уже есть инициализатор конструктора.

TryGetSpeculativeSemanticModel(SemanticModel, Int32, StatementSyntax, SemanticModel)

Получите объект SemanticModel, связанный с оператором, который не появился в этом исходном коде. Его можно использовать для получения подробных семантических сведений о подчастиях оператора, которые не отображаются в исходном коде.

TryGetSpeculativeSemanticModel(SemanticModel, Int32, TypeSyntax, SemanticModel, SpeculativeBindingOption)

Получение объекта SemanticModel, связанного с узлом синтаксиса типа, который не отображался в этом исходном коде. Его можно использовать для получения подробных семантических сведений о подгруппах синтаксиса типа, которые не отображаются в исходном коде.

TryGetSpeculativeSemanticModelForMethodBody(SemanticModel, Int32, AccessorDeclarationSyntax, SemanticModel)

Получите объект SemanticModel, связанный с телом метода, который не отображался в этом исходном коде. Данный position объект должен находиться в существующем теле метода узла корневого синтаксиса для этой модели SemanticModel. Локальные значения и метки, объявленные в этом тексте существующего метода, не считаются область тела спекулированного метода.

TryGetSpeculativeSemanticModelForMethodBody(SemanticModel, Int32, BaseMethodDeclarationSyntax, SemanticModel)

Получите объект SemanticModel, связанный с телом метода, который не отображался в этом исходном коде. Данный position объект должен находиться в существующем теле метода узла корневого синтаксиса для этой модели SemanticModel. Локальные значения и метки, объявленные в этом тексте существующего метода, не считаются область тела спекулированного метода.

VarianceKindFromToken(SyntaxToken)

Применяется к