IPropertySymbol Interface
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Represents a property or indexer.
public interface class IPropertySymbol : IEquatable<Microsoft::CodeAnalysis::ISymbol ^>, Microsoft::CodeAnalysis::ISymbol
public interface IPropertySymbol : IEquatable<Microsoft.CodeAnalysis.ISymbol>, Microsoft.CodeAnalysis.ISymbol
type IPropertySymbol = interface
interface ISymbol
interface IEquatable<ISymbol>
Public Interface IPropertySymbol
Implements IEquatable(Of ISymbol), ISymbol
- Implements
Remarks
This interface is reserved for implementation by its associated APIs. We reserve the right to change it in the future.
Properties
CanBeReferencedByName |
Returns true if this symbol can be referenced by its name in code. (Inherited from ISymbol) |
ContainingAssembly |
Gets the IAssemblySymbol for the containing assembly. Returns null if the symbol is shared across multiple assemblies. (Inherited from ISymbol) |
ContainingModule |
Gets the IModuleSymbol for the containing module. Returns null if the symbol is shared across multiple modules. (Inherited from ISymbol) |
ContainingNamespace |
Gets the INamespaceSymbol for the nearest enclosing namespace. Returns null if the symbol isn't contained in a namespace. (Inherited from ISymbol) |
ContainingSymbol |
Gets the ISymbol for the immediately containing symbol. (Inherited from ISymbol) |
ContainingType |
Gets the INamedTypeSymbol for the containing type. Returns null if the symbol is not contained within a type. (Inherited from ISymbol) |
DeclaredAccessibility |
Gets a Accessibility indicating the declared accessibility for the symbol. Returns NotApplicable if no accessibility is declared. (Inherited from ISymbol) |
DeclaringSyntaxReferences |
Get the syntax node(s) where this symbol was declared in source. Some symbols (for example, partial classes) may be defined in more than one location. This property should return one or more syntax nodes only if the symbol was declared in source code and also was not implicitly declared (see the IsImplicitlyDeclared property). Note that for namespace symbol, the declaring syntax might be declaring a nested namespace. For example, the declaring syntax node for N1 in "namespace N1.N2 {...}" is the entire NamespaceDeclarationSyntax for N1.N2. For the global namespace, the declaring syntax will be the CompilationUnitSyntax. (Inherited from ISymbol) |
ExplicitInterfaceImplementations |
Returns interface properties explicitly implemented by this property. |
GetMethod |
The 'get' accessor of the property, or null if the property is write-only. |
HasUnsupportedMetadata |
Indicates that this symbol uses metadata that cannot be supported by the language. Examples include:
This is distinguished from, for example, references to metadata symbols defined in assemblies that weren't referenced. Symbols where this returns true can never be used successfully, and thus should never appear in any IDE feature. This is set for metadata symbols, as follows:
|
IsAbstract |
Gets a value indicating whether the symbol is abstract. (Inherited from ISymbol) |
IsDefinition |
Gets a value indicating whether the symbol is the original definition. Returns false if the symbol is derived from another symbol, by type substitution for instance. (Inherited from ISymbol) |
IsExtern |
Gets a value indicating whether the symbol is defined externally. (Inherited from ISymbol) |
IsImplicitlyDeclared |
Returns true if this symbol was automatically created by the compiler, and does not have an explicit corresponding source code declaration. (Inherited from ISymbol) |
IsIndexer |
Returns whether the property is really an indexer. |
IsOverride |
Gets a value indicating whether the symbol is an override of a base class symbol. (Inherited from ISymbol) |
IsPartialDefinition |
Returns true if this is a partial definition part. Otherwise false. |
IsReadOnly |
True if this is a read-only property; that is, a property with no set accessor. |
IsRequired |
True if this property is required to be set in an object initializer during construction. |
IsSealed |
Gets a value indicating whether the symbol is sealed. (Inherited from ISymbol) |
IsStatic |
Gets a value indicating whether the symbol is static. (Inherited from ISymbol) |
IsVirtual |
Gets a value indicating whether the symbol is virtual. (Inherited from ISymbol) |
IsWithEvents |
Returns true if this property is an auto-created WithEvents property that takes place of a field member when the field is marked as WithEvents. |
IsWriteOnly |
True if this is a write-only property; that is, a property with no get accessor. |
Kind |
Gets the SymbolKind indicating what kind of symbol it is. (Inherited from ISymbol) |
Language |
Gets the source language ("C#" or "Visual Basic"). (Inherited from ISymbol) |
Locations |
Gets the locations where the symbol was originally defined, either in source or metadata. Some symbols (for example, partial classes) may be defined in more than one location. (Inherited from ISymbol) |
MetadataName |
Gets the name of a symbol as it appears in metadata. Most of the time, this is the same as the Name property, with the following exceptions:
|
MetadataToken |
Gets the metadata token associated with this symbol, or 0 if the symbol is not loaded from metadata. (Inherited from ISymbol) |
Name |
Gets the symbol name. Returns the empty string if unnamed. (Inherited from ISymbol) |
NullableAnnotation | |
OriginalDefinition |
The original definition of the property. If the property is constructed from another symbol by type substitution, OriginalDefinition gets the original symbol, as it was defined in source or metadata. |
OverriddenProperty |
Returns the overridden property, or null. |
Parameters |
The parameters of this property. If this property has no parameters, returns an empty list. Parameters are only present on indexers, or on some properties imported from a COM interface. |
PartialDefinitionPart |
If this is a partial property implementation part, returns the corresponding definition part. Otherwise null. |
PartialImplementationPart |
If this is a partial property definition part, returns the corresponding implementation part. Otherwise null. |
RefCustomModifiers |
Custom modifiers associated with the ref modifier, or an empty array if there are none. |
RefKind |
Returns the RefKind of the property. |
ReturnsByRef |
Returns true if this property returns by reference. |
ReturnsByRefReadonly |
Returns true if this property returns by reference a readonly variable. |
SetMethod |
The 'set' accessor of the property, or null if the property is read-only. |
Type |
The type of the property. |
TypeCustomModifiers |
The list of custom modifiers, if any, associated with the type of the property. |
Methods
Accept(SymbolVisitor) | (Inherited from ISymbol) |
Accept<TArgument,TResult>(SymbolVisitor<TArgument,TResult>, TArgument) | (Inherited from ISymbol) |
Accept<TResult>(SymbolVisitor<TResult>) | (Inherited from ISymbol) |
Equals(ISymbol, SymbolEqualityComparer) |
Determines if this symbol is equal to another, according to the rules of the provided SymbolEqualityComparer (Inherited from ISymbol) |
GetAttributes() |
Gets the attributes for the symbol. Returns an empty ImmutableArray<T> if there are no attributes. (Inherited from ISymbol) |
GetDocumentationCommentId() |
Returns the Documentation Comment ID for the symbol, or null if the symbol doesn't support documentation comments. (Inherited from ISymbol) |
GetDocumentationCommentXml(CultureInfo, Boolean, CancellationToken) |
Gets the XML (as text) for the comment associated with the symbol. (Inherited from ISymbol) |
ToDisplayParts(SymbolDisplayFormat) |
Convert a symbol to an array of string parts, each of which has a kind. Useful for colorizing the display string. (Inherited from ISymbol) |
ToDisplayString(SymbolDisplayFormat) |
Converts the symbol to a string representation. (Inherited from ISymbol) |
ToMinimalDisplayParts(SemanticModel, Int32, SymbolDisplayFormat) |
Convert a symbol to an array of string parts, each of which has a kind. May be tailored to a specific location in the source code. Useful for colorizing the display string. (Inherited from ISymbol) |
ToMinimalDisplayString(SemanticModel, Int32, SymbolDisplayFormat) |
Convert a symbol to a string that can be displayed to the user. May be tailored to a specific location in the source code. (Inherited from ISymbol) |
Extension Methods
IsDefault(IPropertySymbol) | |
IsMustOverride(ISymbol) | |
IsNotOverridable(ISymbol) | |
IsOverloads(IPropertySymbol) | |
IsOverridable(ISymbol) | |
IsOverrides(ISymbol) | |
IsShared(ISymbol) |
Determines if symbol is Shared. |
Applies to
.NET