Header menu logo F# Compiler Guide

SynTypeDefnSimpleRepr Type

Represents the syntax tree for the core of a simple type definition, in either signature or implementation.

Union cases

Union case Description

Enum(cases, range)

Full Usage: Enum(cases, range)

Parameters:

An enum type definition, type X = A = 1 | B = 2

cases : SynEnumCase list
range : range

Exception exnRepr

Full Usage: Exception exnRepr

Parameters:

An exception definition, "exception E = ..."

exnRepr : SynExceptionDefnRepr

General(kind, inherits, slotsigs, fields, isConcrete, isIncrClass, implicitCtorSynPats, range)

Full Usage: General(kind, inherits, slotsigs, fields, isConcrete, isIncrClass, implicitCtorSynPats, range)

Parameters:

An object oriented type definition. This is not a parse-tree form, but represents the core type representation which the type checker splits out from the "ObjectModel" cases of type definitions.

kind : SynTypeDefnKind
inherits : (SynType * range * Ident option) list
slotsigs : (SynValSig * SynMemberFlags) list
fields : SynField list
isConcrete : bool
isIncrClass : bool
implicitCtorSynPats : SynPat option
range : range

LibraryOnlyILAssembly(ilType, range)

Full Usage: LibraryOnlyILAssembly(ilType, range)

Parameters:
    ilType : obj
    range : range

A type defined by using an IL assembly representation. Only used in FSharp.Core. F# syntax: "type X = (# "..."#)

ilType : obj
range : range

None range

Full Usage: None range

Parameters:

An abstract definition, "type X"

range : range

Record(accessibility, recordFields, range)

Full Usage: Record(accessibility, recordFields, range)

Parameters:

A record type definition, type X = { A: int; B: int }

accessibility : SynAccess option
recordFields : SynField list
range : range

TypeAbbrev(detail, rhsType, range)

Full Usage: TypeAbbrev(detail, rhsType, range)

Parameters:

A type abbreviation, "type X = A.B.C"

detail : ParserDetail
rhsType : SynType
range : range

Union(accessibility, unionCases, range)

Full Usage: Union(accessibility, unionCases, range)

Parameters:

A union type definition, type X = A | B

accessibility : SynAccess option
unionCases : SynUnionCase list
range : range

Instance members

Instance member Description

this.Range

Full Usage: this.Range

Returns: range

Gets the syntax range of this construct

Returns: range

Type something to start searching.