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


SemanticModel Класс

Определение

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

public ref class SemanticModel abstract
public abstract class SemanticModel
type SemanticModel = class
Public MustInherit Class SemanticModel
Наследование
SemanticModel

Комментарии

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

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

Конструкторы

Имя Описание
SemanticModel()

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

Свойства

Имя Описание
Compilation

Компиляция этой модели была получена из.

CompilationCore

Компиляция этой модели была получена из.

IgnoresAccessibility

Возвращает значение true, если это СемантикаModel, которая игнорирует правила специальных возможностей при ответе на семантические вопросы.

IsSpeculativeSemanticModel

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

Language

Получает исходный язык ("C#" или "Visual Basic").

NullableAnalysisIsDisabled

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

OriginalPositionForSpeculation

Если это спекулятивная семантическая модель, возвращает исходную позицию, в которой была создана спекулятивная модель. В противном случае возвращается 0.

ParentModel

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

ParentModelCore

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

RootCore

Корневой каталог этой семантической модели

SyntaxTree

Дерево синтаксиса, из который была получена эта модель.

SyntaxTreeCore

Дерево синтаксиса, из который была получена эта модель.

Методы

Имя Описание
AnalyzeControlFlowCore(SyntaxNode, SyntaxNode)

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

AnalyzeControlFlowCore(SyntaxNode)

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

AnalyzeDataFlowCore(SyntaxNode, SyntaxNode)

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

AnalyzeDataFlowCore(SyntaxNode)

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

GetAliasInfoCore(SyntaxNode, CancellationToken)

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

GetConstantValue(SyntaxNode, CancellationToken)

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

GetConstantValueCore(SyntaxNode, CancellationToken)

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

GetDeclarationDiagnostics(Nullable<TextSpan>, CancellationToken)

Получите все ошибки объявления в дереве синтаксиса, связанном с этим объектом. Не получает ошибок, связанных с неправильным синтаксисом, скомпилированием тел метода или инициализаторами.

GetDeclaredSymbolCore(SyntaxNode, CancellationToken)

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

GetDeclaredSymbolsCore(SyntaxNode, CancellationToken)

Возвращает символы, связанные с узлом синтаксиса объявления. В отличие от Microsoft.CodeAnalysis.SemanticModel.GetDeclaredSymbolForNode(Microsoft.CodeAnalysis.SyntaxNode,System.Threading.CancellationToken)этого метода, этот метод возвращает все символы, объявленные заданным узлом синтаксиса объявления. Specifically:

  1. в случае узлов синтаксиса объявления поля, которые могут объявлять несколько символов, этот метод возвращает все объявленные символы.
  2. В случае объявлений типов с первичным конструктором будет возвращен как для типа, так INamedTypeSymbol и IMethodSymbol для основного конструктора.
GetDiagnostics(Nullable<TextSpan>, CancellationToken)

Получите все ошибки в дереве синтаксиса, связанном с этим объектом. Включает ошибки, связанные с телами метода компиляции или инициализаторами, в дополнение к ошибкам, возвращаемым GetDeclarationDiagnostics.

GetEnclosingSymbol(Int32, CancellationToken)

Учитывая позицию в синтаксисеTree для этого семантическогоmodel, возвращает самый внутренний символ, который позиция считается внутри.

GetEnclosingSymbolCore(Int32, CancellationToken)

Учитывая позицию в синтаксисеTree для этого семантическогоmodel, возвращает самый внутренний символ, который позиция считается внутри.

GetImportScopes(Int32, CancellationToken)

Учитывая позицию в синтаксисеTree для этого семантическогоmodel, возвращается в IImportScopeэтот момент. Области упорядочены от ближайшего к переданной position в самый дальний. Дополнительные сведения о доступных сведениях для каждой области см IImportScope . в более подробном описании.

GetMemberGroupCore(SyntaxNode, CancellationToken)

При получении сведений о символе, разрешающемся в группу методов или группу свойств, из которой затем выбирается метод; выбранный метод или свойство присутствует в Символе; Все методы в группе, которую консультировали, помещаются в это свойство.

GetMethodBodyDiagnostics(Nullable<TextSpan>, CancellationToken)

Получение всех ошибок текста метода и инициализатора в дереве синтаксиса, связанном с этим объектом. Не получает ошибок, связанных с неправильным синтаксисом или объявлениями.

GetNullableContext(Int32)

NullableContext Возвращает позицию в файле.

GetOperation(SyntaxNode, CancellationToken)

Возвращает операцию, соответствующую узлу синтаксиса выражения или инструкции.

GetOperationCore(SyntaxNode, CancellationToken)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetPreprocessingSymbolInfo(SyntaxNode)

Если nameSyntax это узел синтаксиса имени идентификатора, верните соответствующее PreprocessingSymbolInfo ему значение.

GetPreprocessingSymbolInfoCore(SyntaxNode)

Если nameSyntax это узел синтаксиса имени идентификатора, верните соответствующее PreprocessingSymbolInfo ему значение.

GetSpeculativeAliasInfoCore(Int32, SyntaxNode, SpeculativeBindingOption)

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

GetSpeculativeSymbolInfoCore(Int32, SyntaxNode, SpeculativeBindingOption)

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

GetSpeculativeTypeInfoCore(Int32, SyntaxNode, SpeculativeBindingOption)

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

GetSymbolInfoCore(SyntaxNode, CancellationToken)

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

GetSyntaxDiagnostics(Nullable<TextSpan>, CancellationToken)

Получите все синтаксические ошибки в дереве синтаксиса, связанном с этим объектом. Не возникает ошибок, связанных с объявлениями или телами методов компиляции или инициализаторами.

GetTopmostNodeForDiagnosticAnalysis(ISymbol, SyntaxNode)

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

GetTypeInfoCore(SyntaxNode, CancellationToken)

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

IsAccessible(Int32, ISymbol)

Определяет, доступен ли символ из указанного расположения.

IsAccessibleCore(Int32, ISymbol)

Определяет, доступен ли символ из указанного расположения.

IsEventUsableAsField(Int32, IEventSymbol)

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

IsEventUsableAsFieldCore(Int32, IEventSymbol)

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

LookupBaseMembers(Int32, String)

Возвращает доступные элементы базового типа в контексте указанного расположения. LookupSymbols(Int32, INamespaceOrTypeSymbol, String, Boolean) Вызов контейнера с набором немедленного базового типа типа, в котором position происходит. Однако правила специальных возможностей отличаются: защищенные элементы базового типа будут видимы.

Рассмотрим следующий пример:

public class Base { protected void M() { } }

открытый класс: Base { void Test(Base b) { b.M(); // Error - не может получить доступ к защищенному члену. Базы. M(); } }

Защищенные элементы экземпляра другого типа доступны только в том случае, если экземпляр, как известно, является "этим" экземпляром (как указано ключевым словом base).

LookupBaseMembersCore(Int32, String)

Резервное выполнение LookupBaseMembers(Int32, String).

LookupLabels(Int32, String)

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

LookupLabelsCore(Int32, String)

Резервное выполнение LookupLabels(Int32, String).

LookupNamespacesAndTypes(Int32, INamespaceOrTypeSymbol, String)

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

LookupNamespacesAndTypesCore(Int32, INamespaceOrTypeSymbol, String)

Резервное выполнение LookupNamespacesAndTypes(Int32, INamespaceOrTypeSymbol, String).

LookupStaticMembers(Int32, INamespaceOrTypeSymbol, String)

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

Неократные методы расширения рассматриваются, так как они являются статическими методами.

LookupStaticMembersCore(Int32, INamespaceOrTypeSymbol, String)

Резервное выполнение LookupStaticMembers(Int32, INamespaceOrTypeSymbol, String).

LookupSymbols(Int32, INamespaceOrTypeSymbol, String, Boolean)

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

LookupSymbolsCore(Int32, INamespaceOrTypeSymbol, String, Boolean)

Резервное выполнение LookupSymbols(Int32, INamespaceOrTypeSymbol, String, Boolean).

Методы расширения

Имя Описание
AnalyzeControlFlow(SemanticModel, StatementSyntax, StatementSyntax)

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

AnalyzeControlFlow(SemanticModel, StatementSyntax, StatementSyntax)

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

AnalyzeControlFlow(SemanticModel, StatementSyntax)

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

AnalyzeControlFlow(SemanticModel, StatementSyntax)

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

AnalyzeControlFlow(SemanticModel, SyntaxNode, SyntaxNode)

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

AnalyzeControlFlow(SemanticModel, SyntaxNode)

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

AnalyzeDataFlow(SemanticModel, ConstructorInitializerSyntax)

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

AnalyzeDataFlow(SemanticModel, ExpressionSyntax)

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

AnalyzeDataFlow(SemanticModel, ExpressionSyntax)

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

AnalyzeDataFlow(SemanticModel, PrimaryConstructorBaseTypeSyntax)

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

AnalyzeDataFlow(SemanticModel, StatementSyntax, StatementSyntax)

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

AnalyzeDataFlow(SemanticModel, StatementSyntax, StatementSyntax)

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

AnalyzeDataFlow(SemanticModel, StatementSyntax)

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

AnalyzeDataFlow(SemanticModel, StatementSyntax)

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

AnalyzeDataFlow(SemanticModel, SyntaxNode, SyntaxNode)

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

AnalyzeDataFlow(SemanticModel, SyntaxNode)

Анализ потока данных в части текста метода. примечание (для C#): КонструкторInitializerSyntax и PrimaryConstructorBaseTypeSyntax обрабатываются этим API как обычные инструкции.

ClassifyConversion(SemanticModel, ExpressionSyntax, ITypeSymbol, Boolean)

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

ClassifyConversion(SemanticModel, ExpressionSyntax, ITypeSymbol)

Определяет тип преобразования между синтаксисом выражения и указанным типом.

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

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

ClassifyConversion(SemanticModel, Int32, ExpressionSyntax, ITypeSymbol)

Определяет тип преобразования между синтаксисом выражения и указанным типом.

GetAggregateClauseSymbolInfo(SemanticModel, AggregateClauseSyntax, CancellationToken)

Возвращает сведения о методах, связанных с AggregateClauseSyntax.

GetAliasInfo(SemanticModel, IdentifierNameSyntax, CancellationToken)

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

GetAliasInfo(SemanticModel, IdentifierNameSyntax, CancellationToken)

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

GetAliasInfo(SemanticModel, SyntaxNode, CancellationToken)

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

GetAwaitExpressionInfo(SemanticModel, AwaitExpressionSyntax, CancellationToken)

Возвращает соответствующий Объект AwaitExpressionInfo, содержащий семантические сведения для указанного объекта AwaitExpressionSyntax.

GetAwaitExpressionInfo(SemanticModel, AwaitExpressionSyntax)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetAwaitExpressionInfo(SemanticModel, LocalDeclarationStatementSyntax)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetAwaitExpressionInfo(SemanticModel, UsingStatementSyntax)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetCollectionInitializerSymbolInfo(SemanticModel, ExpressionSyntax, CancellationToken)

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

GetCollectionInitializerSymbolInfo(SemanticModel, ExpressionSyntax, CancellationToken)

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

GetCollectionRangeVariableSymbolInfo(SemanticModel, CollectionRangeVariableSyntax, CancellationToken)

Возвращает сведения о методах, связанных с CollectionRangeVariableSyntax.

GetConstantValue(SemanticModel, ExpressionSyntax, CancellationToken)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetConversion(SemanticModel, SyntaxNode, CancellationToken)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetConversion(SemanticModel, SyntaxNode, CancellationToken)

Возвращает соответствующую информацию TypeInfo, содержащую семантические сведения для указанного выраженияSyntax.

GetDeclaredSymbol(SemanticModel, AccessorDeclarationSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, AccessorStatementSyntax, CancellationToken)

Возвращает соответствующий методSymbol для указанного объекта AccessorStatementSyntax.

GetDeclaredSymbol(SemanticModel, AggregationRangeVariableSyntax, CancellationToken)

Возвращает соответствующий RangeVariableSymbol для указанного агрегированияRangeVariableSyntax.

GetDeclaredSymbol(SemanticModel, AnonymousObjectCreationExpressionSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, AnonymousObjectCreationExpressionSyntax, CancellationToken)

Возвращает соответствующий Объект NamedTypeSymbol для указанного объекта AnonymousObjectCreationExpressionSyntax.

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, CatchStatementSyntax, CancellationToken)

Возвращает соответствующий localSymbol для указанного catchStatementSyntax.

GetDeclaredSymbol(SemanticModel, CollectionRangeVariableSyntax, CancellationToken)

Возвращает соответствующий RangeVariableSymbol для указанного объекта CollectionRangeVariableSyntax.

GetDeclaredSymbol(SemanticModel, CompilationUnitSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, DeclareStatementSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, DelegateDeclarationSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, DelegateStatementSyntax, CancellationToken)

Возвращает соответствующий Объект NamedTypeSymbol для указанного делегатаStatementSyntax.

GetDeclaredSymbol(SemanticModel, EnumBlockSyntax, CancellationToken)

Возвращает соответствующий Именованный ТипSymbol для указанного enumBlockSyntax.

GetDeclaredSymbol(SemanticModel, EnumMemberDeclarationSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, EnumMemberDeclarationSyntax, CancellationToken)

Возвращает соответствующий FieldSymbol для указанного enumMemberDeclarationSyntax.

GetDeclaredSymbol(SemanticModel, EnumStatementSyntax, CancellationToken)

Возвращает соответствующий Объект NamedTypeSymbol для указанного enumStatementSyntax.

GetDeclaredSymbol(SemanticModel, EventBlockSyntax, CancellationToken)

Возвращает соответствующий объект EventSymbol для указанного объекта EventBlockSyntax.

GetDeclaredSymbol(SemanticModel, EventDeclarationSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, EventStatementSyntax, CancellationToken)

Возвращает соответствующий объект EventSymbol для указанного объекта EventStatementSyntax.

GetDeclaredSymbol(SemanticModel, ExpressionRangeVariableSyntax, CancellationToken)

Возвращает соответствующий RangeVariableSymbol для указанного объекта ExpressionRangeVariableSyntax.

GetDeclaredSymbol(SemanticModel, ExternAliasDirectiveSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, FieldInitializerSyntax, CancellationToken)

Возвращает соответствующее свойство PropertySymbol для указанного FieldInitializerSyntax.

GetDeclaredSymbol(SemanticModel, FileScopedNamespaceDeclarationSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, ForEachStatementSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, IndexerDeclarationSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, JoinIntoClauseSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, LabeledStatementSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, LabelStatementSyntax, CancellationToken)

Возвращает соответствующий LabelSymbol для указанного объекта LabelStatementSyntax.

GetDeclaredSymbol(SemanticModel, LocalFunctionStatementSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, MemberDeclarationSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, MethodBlockBaseSyntax, CancellationToken)

Возвращает соответствующий методSymbol для указанного объекта MethodBlockBaseSyntax.

GetDeclaredSymbol(SemanticModel, MethodStatementSyntax, CancellationToken)

Возвращает соответствующий методSymbol для указанного метода MethodStatementSyntax.

GetDeclaredSymbol(SemanticModel, ModifiedIdentifierSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, NamespaceBlockSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, NamespaceDeclarationSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, NamespaceStatementSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, OperatorStatementSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, ParameterSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, ParameterSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, PropertyBlockSyntax, CancellationToken)

Возвращает соответствующее свойствоSymbol для указанного объекта PropertyBlockSyntax.

GetDeclaredSymbol(SemanticModel, PropertyDeclarationSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, PropertyStatementSyntax, CancellationToken)

Возвращает соответствующее свойствоSymbol для указанного свойства PropertyStatementSyntax.

GetDeclaredSymbol(SemanticModel, QueryClauseSyntax, CancellationToken)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetDeclaredSymbol(SemanticModel, QueryContinuationSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, SimpleImportsClauseSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, SingleVariableDesignationSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, SubNewStatementSyntax, CancellationToken)

Возвращает соответствующий методSymbol для указанного subNewStatementSyntax.

GetDeclaredSymbol(SemanticModel, SwitchLabelSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, SyntaxNode, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, TupleElementSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, TupleElementSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, TupleExpressionSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, TypeBlockSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, TypeParameterSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, TypeParameterSyntax, CancellationToken)

Возвращает соответствующий символ TypeParameterSymbol для указанного объекта TypeParameterSyntax.

GetDeclaredSymbol(SemanticModel, TypeStatementSyntax, CancellationToken)

Возвращает соответствующий Объект NamedTypeSymbol для указанного объекта TypeStatementSyntax.

GetDeclaredSymbol(SemanticModel, UsingDirectiveSyntax, CancellationToken)

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

GetDeclaredSymbol(SemanticModel, VariableDeclaratorSyntax, CancellationToken)

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

GetDeconstructionInfo(SemanticModel, AssignmentExpressionSyntax)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetDeconstructionInfo(SemanticModel, ForEachVariableStatementSyntax)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetForEachStatementInfo(SemanticModel, CommonForEachStatementSyntax)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetForEachStatementInfo(SemanticModel, ForEachBlockSyntax)

Возвращает соответствующий forEachStatementInfo, содержащий семантические сведения для указанного forBlockSyntax.

GetForEachStatementInfo(SemanticModel, ForEachStatementSyntax)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetForEachStatementInfo(SemanticModel, ForEachStatementSyntax)

Возвращает соответствующий forEachStatementInfo, содержащий семантические сведения для указанного forEachStatementSyntax.

GetIndexerGroup(SemanticModel, ExpressionSyntax, CancellationToken)

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

GetInterceptableLocation(SemanticModel, InvocationExpressionSyntax, CancellationToken)

Если node не удается перехватить синтаксически, возвращает значение NULL. В противном случае возвращает экземпляр, который можно использовать для перехвата вызова, nodeобозначаемого .

GetInterceptorMethod(SemanticModel, InvocationExpressionSyntax, CancellationToken)

Если вызов, представленный node ссылкой на объект InterceptsLocationAttribute, возвращает исходный символ определения, украшенный этим атрибутом. В противном случае возвращает значение NULL.

GetMemberGroup(SemanticModel, AttributeSyntax, CancellationToken)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetMemberGroup(SemanticModel, AttributeSyntax, CancellationToken)

Возвращает соответствующий неизменяемыйArray символов для указанного атрибутаSyntax.

GetMemberGroup(SemanticModel, ConstructorInitializerSyntax, CancellationToken)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetMemberGroup(SemanticModel, ExpressionSyntax, CancellationToken)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetMemberGroup(SemanticModel, ExpressionSyntax, CancellationToken)

Возвращает соответствующий неизменяемыйArray символов для указанного выражения ExpressionSyntax.

GetMemberGroup(SemanticModel, SyntaxNode, CancellationToken)

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

GetPreprocessingSymbolInfo(SemanticModel, IdentifierNameSyntax)

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

GetQueryClauseInfo(SemanticModel, QueryClauseSyntax, CancellationToken)

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

GetSpeculativeAliasInfo(SemanticModel, Int32, IdentifierNameSyntax, SpeculativeBindingOption)

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

GetSpeculativeAliasInfo(SemanticModel, Int32, IdentifierNameSyntax, SpeculativeBindingOption)

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

GetSpeculativeAliasInfo(SemanticModel, Int32, SyntaxNode, SpeculativeBindingOption)

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

GetSpeculativeConversion(SemanticModel, Int32, ExpressionSyntax, SpeculativeBindingOption)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetSpeculativeConversion(SemanticModel, Int32, ExpressionSyntax, SpeculativeBindingOption)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetSpeculativeMemberGroup(SemanticModel, Int32, ExpressionSyntax)

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

GetSpeculativeSymbolInfo(SemanticModel, Int32, AttributeSyntax)

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

GetSpeculativeSymbolInfo(SemanticModel, Int32, AttributeSyntax)

Возвращает соответствующую символьную информацию, содержащую семантические сведения для указанной позиции AttributeSyntax, используемой в семантической информации для элементов, не отображаемых в исходном коде.

GetSpeculativeSymbolInfo(SemanticModel, Int32, ConstructorInitializerSyntax)

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

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

GetSpeculativeSymbolInfo(SemanticModel, Int32, CrefSyntax, SpeculativeBindingOption)

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

GetSpeculativeSymbolInfo(SemanticModel, Int32, ExpressionSyntax, SpeculativeBindingOption)

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

GetSpeculativeSymbolInfo(SemanticModel, Int32, ExpressionSyntax, SpeculativeBindingOption)

Возвращает соответствующую символьную информацию, содержащую семантические сведения для указанного атрибутаSyntax.

GetSpeculativeSymbolInfo(SemanticModel, Int32, PrimaryConstructorBaseTypeSyntax)

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

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

GetSpeculativeSymbolInfo(SemanticModel, Int32, SyntaxNode, SpeculativeBindingOption)

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

GetSpeculativeTypeInfo(SemanticModel, Int32, ExpressionSyntax, SpeculativeBindingOption)

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

GetSpeculativeTypeInfo(SemanticModel, Int32, ExpressionSyntax, SpeculativeBindingOption)

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

GetSpeculativeTypeInfo(SemanticModel, Int32, SyntaxNode, SpeculativeBindingOption)

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

GetSymbolInfo(SemanticModel, AttributeSyntax, CancellationToken)

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

GetSymbolInfo(SemanticModel, AttributeSyntax, CancellationToken)

Возвращает соответствующую символьную информацию, содержащую семантические сведения для указанного атрибутаSyntax.

GetSymbolInfo(SemanticModel, ConstructorInitializerSyntax, CancellationToken)

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

GetSymbolInfo(SemanticModel, CrefReferenceSyntax, CancellationToken)

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

GetSymbolInfo(SemanticModel, CrefSyntax, CancellationToken)

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

GetSymbolInfo(SemanticModel, ExpressionRangeVariableSyntax, CancellationToken)

Возвращает метод Select, связанный с ExpressionRangeVariableSyntax элементом или LetClauseSyntaxиным Microsoft.CodeAnalysis.SymbolInfo.None образом, если нет.

GetSymbolInfo(SemanticModel, ExpressionSyntax, CancellationToken)

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

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

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

GetSymbolInfo(SemanticModel, ExpressionSyntax, CancellationToken)

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

GetSymbolInfo(SemanticModel, FunctionAggregationSyntax, CancellationToken)

Возвращает агрегатную функцию, связанную с FunctionAggregationSyntax.

GetSymbolInfo(SemanticModel, OrderingSyntax, CancellationToken)

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

GetSymbolInfo(SemanticModel, OrderingSyntax, CancellationToken)

Возвращает метод OrderBy/OrderByDescending/ThenBy/ThenByDescending, связанный с OrderingSyntax.

GetSymbolInfo(SemanticModel, PrimaryConstructorBaseTypeSyntax, CancellationToken)

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

GetSymbolInfo(SemanticModel, QueryClauseSyntax, CancellationToken)

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

GetSymbolInfo(SemanticModel, SelectOrGroupClauseSyntax, CancellationToken)

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

GetSymbolInfo(SemanticModel, SyntaxNode, CancellationToken)

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

GetTypeInfo(SemanticModel, AttributeSyntax, CancellationToken)

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

GetTypeInfo(SemanticModel, AttributeSyntax, CancellationToken)

Возвращает соответствующий TypeInfo, содержащий семантические сведения для указанного атрибутаSyntax.

GetTypeInfo(SemanticModel, ConstructorInitializerSyntax, CancellationToken)

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

GetTypeInfo(SemanticModel, ExpressionSyntax, CancellationToken)

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

GetTypeInfo(SemanticModel, ExpressionSyntax, CancellationToken)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetTypeInfo(SemanticModel, SelectOrGroupClauseSyntax, CancellationToken)

Позволяет задавать семантические вопросы о дереве синтаксического узла в компиляции. Как правило, экземпляр получается вызовом GetSemanticModel(SyntaxTree, SemanticModelOptions).

GetTypeInfo(SemanticModel, SyntaxNode, CancellationToken)

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

OptionCompareText(SemanticModel)

Возвращает свойство OptionCompareText семантической модели.

OptionExplicit(SemanticModel)

Возвращает свойство OptionExplicit семантической модели.

OptionInfer(SemanticModel)

Возвращает свойство OptionInfer семантической модели.

OptionStrict(SemanticModel)

Возвращает свойство OptionStrict семантической модели.

TryGetSpeculativeSemanticModel(SemanticModel, Int32, ArrowExpressionClauseSyntax, SemanticModel)

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

TryGetSpeculativeSemanticModel(SemanticModel, Int32, AttributeSyntax, SemanticModel)

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

TryGetSpeculativeSemanticModel(SemanticModel, Int32, AttributeSyntax, SemanticModel)

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

TryGetSpeculativeSemanticModel(SemanticModel, Int32, ConstructorInitializerSyntax, SemanticModel)

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

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

TryGetSpeculativeSemanticModel(SemanticModel, Int32, CrefSyntax, SemanticModel)

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

TryGetSpeculativeSemanticModel(SemanticModel, Int32, EqualsValueClauseSyntax, SemanticModel)

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

TryGetSpeculativeSemanticModel(SemanticModel, Int32, EqualsValueSyntax, SemanticModel)

Возвращает семантическийmodel для объекта EqualsValueSyntax в заданной позиции, используемой в семантической информации для элементов, не отображаемых в исходном коде.

TryGetSpeculativeSemanticModel(SemanticModel, Int32, ExecutableStatementSyntax, SemanticModel)

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

TryGetSpeculativeSemanticModel(SemanticModel, Int32, PrimaryConstructorBaseTypeSyntax, SemanticModel)

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

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

TryGetSpeculativeSemanticModel(SemanticModel, Int32, RangeArgumentSyntax, SemanticModel)

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

TryGetSpeculativeSemanticModel(SemanticModel, Int32, StatementSyntax, SemanticModel)

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

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

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

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

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

TryGetSpeculativeSemanticModelForMethodBody(SemanticModel, Int32, AccessorDeclarationSyntax, SemanticModel)

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

TryGetSpeculativeSemanticModelForMethodBody(SemanticModel, Int32, BaseMethodDeclarationSyntax, SemanticModel)

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

TryGetSpeculativeSemanticModelForMethodBody(SemanticModel, Int32, MethodBlockBaseSyntax, SemanticModel)

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

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