StructuralInference
Namespace: FSharp.Data.Runtime
Implements type inference for unstructured documents like XML or JSON
Nested types and modules
Type | Description |
IUnitsOfMeasureProvider |
Functions and values
Function or value | Description |
defaultUnitsOfMeasureProvider
Signature: IUnitsOfMeasureProvider
|
|
getInferedTypeFromString(...)
Signature: cultureInfo:CultureInfo -> value:string -> unit:Type option -> InferedType
|
Infers the type of a simple string value |
inferCollectionType(...)
Signature: allowEmptyValues:bool -> types:seq<InferedType> -> InferedType
|
Infer the type of the collection based on multiple sample types (group the types by tag, count their multiplicity) |
inferPrimitiveType cultureInfo value
Signature: cultureInfo:CultureInfo -> value:string -> Type
|
Infers the type of a simple string value
Returns one of null|typeof |
parseUnitOfMeasure provider str
Signature: provider:IUnitsOfMeasureProvider -> str:string -> Type option
|
|
subtypeInfered allowEmptyValues ot1 ot2
Signature: allowEmptyValues:bool -> ot1:InferedType -> ot2:InferedType -> InferedType
|
Find common subtype of two infered types:
The contract that should hold about the function is that given two types with the
same |
supportsUnitsOfMeasure(typ)
Signature: typ:Type -> bool
|
Checks whether a type supports unit of measure |
typeTag(_arg1)
Signature: _arg1:InferedType -> InferedTypeTag
|
Returns a tag of a type - a tag represents a 'kind' of type (essentially it describes the different bottom types we have) |
unionCollectionOrder order1 order2
Signature: order1:InferedTypeTag list -> order2:InferedTypeTag list -> InferedTypeTag list
|
|
unionRecordTypes allowEmptyValues t1 t2
Signature: allowEmptyValues:bool -> t1:InferedProperty list -> t2:InferedProperty list -> InferedProperty list
|
Get the union of record types (merge their properties)
This matches the corresponding members and marks them as |