Class SemanticModel
Inheritance
SemanticModel
Assembly: Microsoft.CodeAnalysis.dll
Syntax
public abstract class SemanticModel
Constructors
SemanticModel()
Declaration
protected SemanticModel()
Properties
Compilation
Declaration
public Compilation Compilation { get; }
Property Value
CompilationCore
Declaration
protected abstract Compilation CompilationCore { get; }
Property Value
IgnoresAccessibility
Declaration
public virtual bool IgnoresAccessibility { get; }
Property Value
IsSpeculativeSemanticModel
Declaration
public abstract bool IsSpeculativeSemanticModel { get; }
Property Value
Language
Declaration
public abstract string Language { get; }
Property Value
NullableAnalysisIsDisabled
Declaration
public abstract bool NullableAnalysisIsDisabled { get; }
Property Value
OriginalPositionForSpeculation
Declaration
public abstract int OriginalPositionForSpeculation { get; }
Property Value
ParentModel
Declaration
public SemanticModel? ParentModel { get; }
Property Value
ParentModelCore
Declaration
protected abstract SemanticModel? ParentModelCore { get; }
Property Value
RootCore
Declaration
protected abstract SyntaxNode RootCore { get; }
Property Value
SyntaxTree
Declaration
public SyntaxTree SyntaxTree { get; }
Property Value
SyntaxTreeCore
Declaration
protected abstract SyntaxTree SyntaxTreeCore { get; }
Property Value
Methods
AnalyzeControlFlowCore(SyntaxNode)
Declaration
protected abstract ControlFlowAnalysis AnalyzeControlFlowCore(SyntaxNode statement)
Parameters
Returns
AnalyzeControlFlowCore(SyntaxNode, SyntaxNode)
Declaration
protected abstract ControlFlowAnalysis AnalyzeControlFlowCore(SyntaxNode firstStatement, SyntaxNode lastStatement)
Parameters
Returns
AnalyzeDataFlowCore(SyntaxNode)
Declaration
protected abstract DataFlowAnalysis AnalyzeDataFlowCore(SyntaxNode statementOrExpression)
Parameters
| Type |
Name |
Description |
| SyntaxNode |
statementOrExpression |
|
Returns
AnalyzeDataFlowCore(SyntaxNode, SyntaxNode)
Declaration
protected abstract DataFlowAnalysis AnalyzeDataFlowCore(SyntaxNode firstStatement, SyntaxNode lastStatement)
Parameters
Returns
GetAliasInfoCore(SyntaxNode, CancellationToken)
Declaration
protected abstract IAliasSymbol? GetAliasInfoCore(SyntaxNode nameSyntax, CancellationToken cancellationToken = default)
Parameters
Returns
GetConstantValue(SyntaxNode, CancellationToken)
Declaration
public Optional<object?> GetConstantValue(SyntaxNode node, CancellationToken cancellationToken = default)
Parameters
Returns
GetConstantValueCore(SyntaxNode, CancellationToken)
Declaration
protected abstract Optional<object?> GetConstantValueCore(SyntaxNode node, CancellationToken cancellationToken = default)
Parameters
Returns
GetDeclarationDiagnostics(TextSpan?, CancellationToken)
Declaration
public abstract ImmutableArray<Diagnostic> GetDeclarationDiagnostics(TextSpan? span = null, CancellationToken cancellationToken = default)
Parameters
Returns
GetDeclaredSymbolCore(SyntaxNode, CancellationToken)
Declaration
protected abstract ISymbol? GetDeclaredSymbolCore(SyntaxNode declaration, CancellationToken cancellationToken = default)
Parameters
Returns
GetDeclaredSymbolsCore(SyntaxNode, CancellationToken)
Declaration
protected abstract ImmutableArray<ISymbol> GetDeclaredSymbolsCore(SyntaxNode declaration, CancellationToken cancellationToken = default)
Parameters
Returns
GetDiagnostics(TextSpan?, CancellationToken)
Declaration
public abstract ImmutableArray<Diagnostic> GetDiagnostics(TextSpan? span = null, CancellationToken cancellationToken = default)
Parameters
Returns
GetEnclosingSymbol(int, CancellationToken)
Declaration
public ISymbol? GetEnclosingSymbol(int position, CancellationToken cancellationToken = default)
Parameters
Returns
GetEnclosingSymbolCore(int, CancellationToken)
Declaration
protected abstract ISymbol? GetEnclosingSymbolCore(int position, CancellationToken cancellationToken = default)
Parameters
Returns
GetImportScopes(int, CancellationToken)
Declaration
public ImmutableArray<IImportScope> GetImportScopes(int position, CancellationToken cancellationToken = default)
Parameters
Returns
GetMemberGroupCore(SyntaxNode, CancellationToken)
Declaration
protected abstract ImmutableArray<ISymbol> GetMemberGroupCore(SyntaxNode node, CancellationToken cancellationToken = default)
Parameters
Returns
GetMethodBodyDiagnostics(TextSpan?, CancellationToken)
Declaration
public abstract ImmutableArray<Diagnostic> GetMethodBodyDiagnostics(TextSpan? span = null, CancellationToken cancellationToken = default)
Parameters
Returns
GetNullableContext(int)
Declaration
public abstract NullableContext GetNullableContext(int position)
Parameters
| Type |
Name |
Description |
| int |
position |
|
Returns
GetOperation(SyntaxNode, CancellationToken)
Declaration
public IOperation? GetOperation(SyntaxNode node, CancellationToken cancellationToken = default)
Parameters
Returns
GetOperationCore(SyntaxNode, CancellationToken)
Declaration
protected abstract IOperation? GetOperationCore(SyntaxNode node, CancellationToken cancellationToken)
Parameters
Returns
GetPreprocessingSymbolInfo(SyntaxNode)
Declaration
public PreprocessingSymbolInfo GetPreprocessingSymbolInfo(SyntaxNode nameSyntax)
Parameters
Returns
GetPreprocessingSymbolInfoCore(SyntaxNode)
Declaration
protected abstract PreprocessingSymbolInfo GetPreprocessingSymbolInfoCore(SyntaxNode nameSyntax)
Parameters
Returns
GetSpeculativeAliasInfoCore(int, SyntaxNode, SpeculativeBindingOption)
Declaration
protected abstract IAliasSymbol? GetSpeculativeAliasInfoCore(int position, SyntaxNode nameSyntax, SpeculativeBindingOption bindingOption)
Parameters
Returns
GetSpeculativeSymbolInfoCore(int, SyntaxNode, SpeculativeBindingOption)
Declaration
protected abstract SymbolInfo GetSpeculativeSymbolInfoCore(int position, SyntaxNode expression, SpeculativeBindingOption bindingOption)
Parameters
Returns
GetSpeculativeTypeInfoCore(int, SyntaxNode, SpeculativeBindingOption)
Declaration
protected abstract TypeInfo GetSpeculativeTypeInfoCore(int position, SyntaxNode expression, SpeculativeBindingOption bindingOption)
Parameters
Returns
GetSymbolInfoCore(SyntaxNode, CancellationToken)
Declaration
protected abstract SymbolInfo GetSymbolInfoCore(SyntaxNode node, CancellationToken cancellationToken = default)
Parameters
Returns
GetSyntaxDiagnostics(TextSpan?, CancellationToken)
Declaration
public abstract ImmutableArray<Diagnostic> GetSyntaxDiagnostics(TextSpan? span = null, CancellationToken cancellationToken = default)
Parameters
Returns
GetTopmostNodeForDiagnosticAnalysis(ISymbol, SyntaxNode)
Declaration
protected virtual SyntaxNode GetTopmostNodeForDiagnosticAnalysis(ISymbol symbol, SyntaxNode declaringSyntax)
Parameters
Returns
GetTypeInfoCore(SyntaxNode, CancellationToken)
Declaration
protected abstract TypeInfo GetTypeInfoCore(SyntaxNode node, CancellationToken cancellationToken = default)
Parameters
Returns
IsAccessible(int, ISymbol)
Declaration
public bool IsAccessible(int position, ISymbol symbol)
Parameters
Returns
IsAccessibleCore(int, ISymbol)
Declaration
protected abstract bool IsAccessibleCore(int position, ISymbol symbol)
Parameters
Returns
IsEventUsableAsField(int, IEventSymbol)
Declaration
public bool IsEventUsableAsField(int position, IEventSymbol eventSymbol)
Parameters
Returns
IsEventUsableAsFieldCore(int, IEventSymbol)
Declaration
protected abstract bool IsEventUsableAsFieldCore(int position, IEventSymbol eventSymbol)
Parameters
Returns
LookupBaseMembers(int, string?)
Declaration
public ImmutableArray<ISymbol> LookupBaseMembers(int position, string? name = null)
Parameters
| Type |
Name |
Description |
| int |
position |
|
| string |
name |
|
Returns
LookupBaseMembersCore(int, string?)
Declaration
protected abstract ImmutableArray<ISymbol> LookupBaseMembersCore(int position, string? name)
Parameters
| Type |
Name |
Description |
| int |
position |
|
| string |
name |
|
Returns
LookupLabels(int, string?)
Declaration
public ImmutableArray<ISymbol> LookupLabels(int position, string? name = null)
Parameters
| Type |
Name |
Description |
| int |
position |
|
| string |
name |
|
Returns
LookupLabelsCore(int, string?)
Declaration
protected abstract ImmutableArray<ISymbol> LookupLabelsCore(int position, string? name)
Parameters
| Type |
Name |
Description |
| int |
position |
|
| string |
name |
|
Returns
LookupNamespacesAndTypes(int, INamespaceOrTypeSymbol?, string?)
Declaration
public ImmutableArray<ISymbol> LookupNamespacesAndTypes(int position, INamespaceOrTypeSymbol? container = null, string? name = null)
Parameters
Returns
LookupNamespacesAndTypesCore(int, INamespaceOrTypeSymbol?, string?)
Declaration
protected abstract ImmutableArray<ISymbol> LookupNamespacesAndTypesCore(int position, INamespaceOrTypeSymbol? container, string? name)
Parameters
Returns
LookupStaticMembers(int, INamespaceOrTypeSymbol?, string?)
Declaration
public ImmutableArray<ISymbol> LookupStaticMembers(int position, INamespaceOrTypeSymbol? container = null, string? name = null)
Parameters
Returns
LookupStaticMembersCore(int, INamespaceOrTypeSymbol?, string?)
Declaration
protected abstract ImmutableArray<ISymbol> LookupStaticMembersCore(int position, INamespaceOrTypeSymbol? container, string? name)
Parameters
Returns
LookupSymbols(int, INamespaceOrTypeSymbol?, string?, bool)
Declaration
public ImmutableArray<ISymbol> LookupSymbols(int position, INamespaceOrTypeSymbol? container = null, string? name = null, bool includeReducedExtensionMethods = false)
Parameters
Returns
LookupSymbolsCore(int, INamespaceOrTypeSymbol?, string?, bool)
Declaration
protected abstract ImmutableArray<ISymbol> LookupSymbolsCore(int position, INamespaceOrTypeSymbol? container, string? name, bool includeReducedExtensionMethods)
Parameters
Returns
Extension Methods