TypeReference Type
`Shape.typeRef` and the helpers under it: what happens to a type at a reference position.
Union cases
| Union case |
Description
|
Full Usage:
AnonymousInMappedGroup
|
Wave five, lane R. An anonymous shape in a mapped group. The destination binds names, and an anonymous shape has none. |
Full Usage:
AnonymousInReferencedGroup
|
|
Full Usage:
AnyToObj
|
|
Full Usage:
ArgumentNotASubtypeOfConstraint(argument, name, bound)
Parameters:
string
name : string
bound : string
|
F# subtyping is nominal where TypeScript's is structural: an argument that merely has the constraint's members is FS0001 at the application, so it is written as the constraint, the way an argument that widened to `obj` already is.
|
Full Usage:
ArgumentNotBoundWithConstraint(variable, name, bound)
Parameters:
string
name : string
bound : string
|
|
Full Usage:
ArrayIntersectionMembersDropped dropped
Parameters:
int
|
Wave three, lane H. An intersection whose operands include an array shape maps to the element array; members contributed by the other operands have no F# form on an array.
|
Full Usage:
BigIntLiteralToBigInt
|
|
Full Usage:
CallableWithoutSignatures
|
|
Full Usage:
CallbackOverloadsFromFirst overloads
Parameters:
int
|
|
Full Usage:
ConditionalResolvedToBranch(conditional, branch)
Parameters:
string
branch : string
|
Wave two, lane E. The negative of the above: the checker resolved the condition itself, so a branch is known and the mapping is the branch rather than `obj`.
|
Full Usage:
ConditionalTypeDeferred conditional
Parameters:
string
|
Wave two, lane E. A conditional type is deferred: its branch is not chosen until the checker has an argument to test, and F# has no form that defers a type. The whole of `TR014` is now this construct, so it is named rather than reported as a flag.
|
Full Usage:
ConstrainedArgumentWidened(name, bound)
Parameters:
string
bound : string
|
|
Full Usage:
ConstructorObjectNotDeclared constructs
Parameters:
string
|
|
Full Usage:
EmptyIntersectionOperandReduced
|
Wave four, lane P. `X & {}` - the autocomplete idiom - reduces to `X`, and the reference renders `X`'s own form. |
Full Usage:
EmptyUnionToObj
|
|
Full Usage:
GlobalThisToObj
|
|
Full Usage:
IndexedAccessNoForm
|
|
Full Usage:
IntersectionCallableFlattened signatures
Parameters:
int
|
Wave four, lane P. An intersection of callable operands at a member position, rendered from the call signatures the operands carry.
|
Full Usage:
IntersectionNotDeclared
|
|
Full Usage:
IntersectionOperandsIdentical
|
Wave four, lane P. Every operand of a flattened property is the same type, so the property renders that type. |
Full Usage:
IntersectionOverNonObject
|
|
Full Usage:
KeyOfOpenOperand name
Parameters:
string
|
|
Full Usage:
KeyOfOperandOutOfScope
|
|
Full Usage:
LibBindingLoss note
Parameters:
string
|
|
Full Usage:
LibExtraTypeArgumentsDropped(name, given, fsharpName, arity)
Parameters:
string
given : int
fsharpName : string
arity : int
|
|
Full Usage:
LoneEnumMemberToFloat
|
|
Full Usage:
LoneEnumMemberToString
|
|
Full Usage:
MappedNameArityMismatch(name, given)
Parameters:
string
given : int
|
Wave five, lane R. The destination binding takes a different number of type arguments than the site applies.
|
Full Usage:
MissingFromTypeTable typeId
Parameters:
int
|
|
Full Usage:
NotAmongGeneratedDeclarations shown
Parameters:
string
|
|
Full Usage:
NullableHoistedToOption
|
|
Full Usage:
NumericLiteralToFloat
|
|
Full Usage:
ObjectTypeToObj
|
|
Full Usage:
ObjectWithoutMembers
|
Wave three, lane H. An object type declaring no members. `obj` admits everything the type does, so the reference is exact in surface and widened only in name. Distinct from `TR023`, which reports a declaration the run was expected to generate and did not. |
Full Usage:
OnlyNullUndefinedToUnit
|
|
Full Usage:
PolymorphicThisAsDeclaringType
|
|
Full Usage:
ReferencedArityUnconfirmed(name, given)
Parameters:
string
given : int
|
Wave five, lane U. A reference into a `reference` group applies type arguments, and the group's declaration is resolved by identity only.
|
Full Usage:
SelfReferenceThroughUnnamed
|
|
Full Usage:
StringLiteralToString
|
|
Full Usage:
StringMappingToString
|
|
Full Usage:
SymbolNoBinding
|
|
Full Usage:
TemplateLiteralToString
|
|
Full Usage:
ThisOutsideDeclaration
|
|
Full Usage:
TupleArityNoForm components
Parameters:
int
|
|
Full Usage:
TupleRestToArray
|
|
Full Usage:
TypeFlagsNotMapped flags
Parameters:
string
|
|
Full Usage:
TypeNotResolved reason
Parameters:
string
|
|
Full Usage:
TypeParameterOutOfScope
|
|
Full Usage:
TypeParameterOutOfScopeToConstraint constraintName
Parameters:
string
|
|
Full Usage:
UnionTooWide(arms, cap)
Parameters:
int
cap : int
|
|
Full Usage:
UnionWithObjArm
|
|
Full Usage:
UniqueSymbolNoBinding
|
|
Full Usage:
UnknownToObj
|
|
Full Usage:
UnnamedBrandToPrimitive
|
|
Instance members
| Instance member |
Description
|
Full Usage:
this.IsAnonymousInMappedGroup
Returns: bool
|
|
Full Usage:
this.IsAnonymousInReferencedGroup
Returns: bool
|
|
Full Usage:
this.IsAnyToObj
Returns: bool
|
|
Full Usage:
this.IsArgumentNotASubtypeOfConstraint
Returns: bool
|
|
Full Usage:
this.IsArgumentNotBoundWithConstraint
Returns: bool
|
|
Full Usage:
this.IsArrayIntersectionMembersDropped
Returns: bool
|
|
Full Usage:
this.IsBigIntLiteralToBigInt
Returns: bool
|
|
Full Usage:
this.IsCallableWithoutSignatures
Returns: bool
|
|
Full Usage:
this.IsCallbackOverloadsFromFirst
Returns: bool
|
|
Full Usage:
this.IsConditionalResolvedToBranch
Returns: bool
|
|
Full Usage:
this.IsConditionalTypeDeferred
Returns: bool
|
|
Full Usage:
this.IsConstrainedArgumentWidened
Returns: bool
|
|
Full Usage:
this.IsConstructorObjectNotDeclared
Returns: bool
|
|
Full Usage:
this.IsEmptyIntersectionOperandReduced
Returns: bool
|
|
Full Usage:
this.IsEmptyUnionToObj
Returns: bool
|
|
Full Usage:
this.IsGlobalThisToObj
Returns: bool
|
|
Full Usage:
this.IsIndexedAccessNoForm
Returns: bool
|
|
Full Usage:
this.IsIntersectionCallableFlattened
Returns: bool
|
|
Full Usage:
this.IsIntersectionNotDeclared
Returns: bool
|
|
Full Usage:
this.IsIntersectionOperandsIdentical
Returns: bool
|
|
Full Usage:
this.IsIntersectionOverNonObject
Returns: bool
|
|
Full Usage:
this.IsKeyOfOpenOperand
Returns: bool
|
|
Full Usage:
this.IsKeyOfOperandOutOfScope
Returns: bool
|
|
Full Usage:
this.IsLibBindingLoss
Returns: bool
|
|
Full Usage:
this.IsLibExtraTypeArgumentsDropped
Returns: bool
|
|
Full Usage:
this.IsLoneEnumMemberToFloat
Returns: bool
|
|
Full Usage:
this.IsLoneEnumMemberToString
Returns: bool
|
|
Full Usage:
this.IsMappedNameArityMismatch
Returns: bool
|
|
Full Usage:
this.IsMissingFromTypeTable
Returns: bool
|
|
Full Usage:
this.IsNotAmongGeneratedDeclarations
Returns: bool
|
|
Full Usage:
this.IsNullableHoistedToOption
Returns: bool
|
|
Full Usage:
this.IsNumericLiteralToFloat
Returns: bool
|
|
Full Usage:
this.IsObjectTypeToObj
Returns: bool
|
|
Full Usage:
this.IsObjectWithoutMembers
Returns: bool
|
|
Full Usage:
this.IsOnlyNullUndefinedToUnit
Returns: bool
|
|
Full Usage:
this.IsPolymorphicThisAsDeclaringType
Returns: bool
|
|
Full Usage:
this.IsReferencedArityUnconfirmed
Returns: bool
|
|
Full Usage:
this.IsSelfReferenceThroughUnnamed
Returns: bool
|
|
Full Usage:
this.IsStringLiteralToString
Returns: bool
|
|
Full Usage:
this.IsStringMappingToString
Returns: bool
|
|
Full Usage:
this.IsSymbolNoBinding
Returns: bool
|
|
Full Usage:
this.IsTemplateLiteralToString
Returns: bool
|
|
Full Usage:
this.IsThisOutsideDeclaration
Returns: bool
|
|
Full Usage:
this.IsTupleArityNoForm
Returns: bool
|
|
Full Usage:
this.IsTupleRestToArray
Returns: bool
|
|
Full Usage:
this.IsTypeFlagsNotMapped
Returns: bool
|
|
Full Usage:
this.IsTypeNotResolved
Returns: bool
|
|
Full Usage:
this.IsTypeParameterOutOfScope
Returns: bool
|
|
Full Usage:
this.IsTypeParameterOutOfScopeToConstraint
Returns: bool
|
|
Full Usage:
this.IsUnionTooWide
Returns: bool
|
|
Full Usage:
this.IsUnionWithObjArm
Returns: bool
|
|
Full Usage:
this.IsUniqueSymbolNoBinding
Returns: bool
|
|
Full Usage:
this.IsUnknownToObj
Returns: bool
|
|
Full Usage:
this.IsUnnamedBrandToPrimitive
Returns: bool
|
|