Logo F# Compiler Guide

FSharpField Type

A subtype of FSharpSymbol that represents a record or union case field as seen by the F# language

Instance members

Instance member Description

this.AnonRecordFieldDetails

Full Usage: this.AnonRecordFieldDetails

Returns: FSharpAnonRecordTypeDetails * FSharpType[] * int

If the field is from an anonymous record type then get the details of the field including the index in the sorted array of fields

Returns: FSharpAnonRecordTypeDetails * FSharpType[] * int

this.DeclarationLocation

Full Usage: this.DeclarationLocation

Returns: range

Get the declaration location of the field

Returns: range

this.DeclaringEntity

Full Usage: this.DeclaringEntity

Returns: FSharpEntity option

Get the declaring entity of this field, if any. Fields from anonymous types do not have a declaring entity

Returns: FSharpEntity option

this.DeclaringUnionCase

Full Usage: this.DeclaringUnionCase

Returns: FSharpUnionCase option

Returns the declaring union case symbol

Returns: FSharpUnionCase option

this.FieldAttributes

Full Usage: this.FieldAttributes

Returns: IList<FSharpAttribute>

Get the attributes attached to generated field

Returns: IList<FSharpAttribute>

this.FieldType

Full Usage: this.FieldType

Returns: FSharpType

Get the type of the field, w.r.t. the generic parameters of the enclosing type constructor

Returns: FSharpType

this.IsAnonRecordField

Full Usage: this.IsAnonRecordField

Returns: bool

Is this a field from an anonymous record type?

Returns: bool

this.IsCompilerGenerated

Full Usage: this.IsCompilerGenerated

Returns: bool

Indicates a compiler generated field, not visible to Intellisense or name resolution

Returns: bool

this.IsDefaultValue

Full Usage: this.IsDefaultValue

Returns: bool

Indicates if the field declared is declared 'DefaultValue'

Returns: bool

this.IsLiteral

Full Usage: this.IsLiteral

Returns: bool

Indicates if the field has a literal value

Returns: bool

this.IsMutable

Full Usage: this.IsMutable

Returns: bool

Indicates if the field is declared 'static'

Returns: bool

this.IsNameGenerated

Full Usage: this.IsNameGenerated

Returns: bool

Indicates if the field name was generated by compiler (e.g. ItemN names in union cases and DataN in exceptions). This API returns true for source defined symbols only.

Returns: bool

this.IsStatic

Full Usage: this.IsStatic

Returns: bool

Indicates a static field

Returns: bool

this.IsUnionCaseField

Full Usage: this.IsUnionCaseField

Returns: bool

Indicates if the field is declared in a union case

Returns: bool

this.IsUnresolved

Full Usage: this.IsUnresolved

Returns: bool

Indicates if the record field is for a type in an unresolved assembly

Returns: bool

this.IsVolatile

Full Usage: this.IsVolatile

Returns: bool

Indicates if the field is declared volatile

Returns: bool

this.LiteralValue

Full Usage: this.LiteralValue

Returns: objnull option

Get the default initialization info, for static literals

Returns: objnull option

this.Name

Full Usage: this.Name

Returns: string

Get the name of the field

Returns: string

this.PropertyAttributes

Full Usage: this.PropertyAttributes

Returns: IList<FSharpAttribute>

Get the attributes attached to generated property

Returns: IList<FSharpAttribute>

this.XmlDoc

Full Usage: this.XmlDoc

Returns: FSharpXmlDoc

Get the XML documentation for the entity

Returns: FSharpXmlDoc

this.XmlDocSig

Full Usage: this.XmlDocSig

Returns: string

Get the XML documentation signature for .xml file lookup for the field, used for .xml file lookup for compiled code

Returns: string

Inherited members

Inherited from FSharpSymbol

Instance members

Instance member Description

this.GetEffectivelySameAsHash

Full Usage: this.GetEffectivelySameAsHash

Returns: int

A hash compatible with the IsEffectivelySameAs relation

Returns: int

this.HasAttribute

Full Usage: this.HasAttribute

Returns: bool
Type parameters: 'T

Indicates if this symbol has an attribute matching the full name of the given type parameter

Returns: bool

this.IsAccessible

Full Usage: this.IsAccessible

Parameters:
Returns: bool

Computes if the symbol is accessible for the given accessibility rights

arg0 : FSharpAccessibilityRights
Returns: bool

this.IsEffectivelySameAs

Full Usage: this.IsEffectivelySameAs

Parameters:
Returns: bool

Return true if two symbols are effectively the same when referred to in F# source code text. This sees through signatures (a symbol in a signature will be considered effectively the same as the matching symbol in an implementation). In addition, other equivalences are applied when the same F# source text implies the same declaration name - for example, constructors are considered to be effectively the same symbol as the corresponding type definition. This is the relation used by GetUsesOfSymbol and GetUsesOfSymbolInFile.

other : FSharpSymbol
Returns: bool

this.TryGetAttribute

Full Usage: this.TryGetAttribute

Returns: FSharpAttribute option
Type parameters: 'T

Try to get an attribute matching the full name of the given type parameter

Returns: FSharpAttribute option

this.DeclarationLocation

Full Usage: this.DeclarationLocation

Returns: range option

Get the declaration location for the symbol

Returns: range option

this.SignatureLocation

Full Usage: this.SignatureLocation

Returns: range option

Get the signature location for the symbol if it was declared in an implementation

Returns: range option

this.IsExplicitlySuppressed

Full Usage: this.IsExplicitlySuppressed

Returns: bool
Returns: bool

this.Accessibility

Full Usage: this.Accessibility

Returns: FSharpAccessibility
Modifiers: abstract

Get the declared accessibility of the symbol, if any

Returns: FSharpAccessibility

this.Assembly

Full Usage: this.Assembly

Returns: FSharpAssembly

Get the assembly declaring this symbol

Returns: FSharpAssembly

this.ImplementationLocation

Full Usage: this.ImplementationLocation

Returns: range option

Get the implementation location for the symbol if it was declared in a signature that has an implementation

Returns: range option

this.Attributes

Full Usage: this.Attributes

Returns: IList<FSharpAttribute>
Modifiers: abstract

Get the attributes for the symbol, if any

Returns: IList<FSharpAttribute>

this.FullName

Full Usage: this.FullName

Returns: string

Get a textual representation of the full name of the symbol. The text returned for some symbols may not be a valid identifier path in F# code, but rather a human-readable representation of the symbol.

Returns: string

this.DisplayNameCore

Full Usage: this.DisplayNameCore

Returns: string

Gets the display name for the symbol where double backticks are not added for non-identifiers

Returns: string

this.DisplayName

Full Usage: this.DisplayName

Returns: string

Gets the display name for the symbol. Double backticks are added if the name is not a valid identifier. For FSharpParameter symbols without a name for the parameter, this returns "````"

Returns: string

Type something to start searching.