| Safe Haskell | None |
|---|---|
| Language | GHC2024 |
Elara.TypeInfer.Convert
Synopsis
- freeTypeVars :: KindedType -> [TaggedLocate 'TypeNode SourceRegion (Unique LowerAlphaName)]
- astTypeToGeneralisedInferType :: forall (r :: [Effect]). Error TypeConvertError :> r => KindedType -> Eff r (Type SourceRegion)
- astTypeToInferType :: forall (r :: [Effect]). Error TypeConvertError :> r => KindedType -> Eff r (Monotype SourceRegion)
- astTypeToInferTypeWithKind :: forall (r :: [Effect]). Error TypeConvertError :> r => KindedType -> Eff r (Monotype SourceRegion, ElaraKind)
- convertTyVar :: TaggedLocate 'TypeNode SourceRegion (Unique LowerAlphaName) -> TaggedLocate 'TypeNode SourceRegion (Unique (Maybe Text))
- astTypeToInferType' :: forall (r :: [Effect]). Error TypeConvertError :> r => SourceRegion -> KindedType' -> Eff r (Monotype SourceRegion)
- assertMonotype :: forall (r :: [Effect]). Error TypeConvertError :> r => Type SourceRegion -> Eff r (Monotype SourceRegion)
- data TypeConvertError
- kindedToTypedType :: Type SourceRegion Kinded -> Type SourceRegion Typed
- kindedToTypedType' :: Type' SourceRegion Kinded -> Type' SourceRegion Typed
Documentation
freeTypeVars :: KindedType -> [TaggedLocate 'TypeNode SourceRegion (Unique LowerAlphaName)] Source #
Collect free type variables from a type
astTypeToGeneralisedInferType :: forall (r :: [Effect]). Error TypeConvertError :> r => KindedType -> Eff r (Type SourceRegion) Source #
astTypeToInferType :: forall (r :: [Effect]). Error TypeConvertError :> r => KindedType -> Eff r (Monotype SourceRegion) Source #
astTypeToInferTypeWithKind :: forall (r :: [Effect]). Error TypeConvertError :> r => KindedType -> Eff r (Monotype SourceRegion, ElaraKind) Source #
convertTyVar :: TaggedLocate 'TypeNode SourceRegion (Unique LowerAlphaName) -> TaggedLocate 'TypeNode SourceRegion (Unique (Maybe Text)) Source #
astTypeToInferType' :: forall (r :: [Effect]). Error TypeConvertError :> r => SourceRegion -> KindedType' -> Eff r (Monotype SourceRegion) Source #
assertMonotype :: forall (r :: [Effect]). Error TypeConvertError :> r => Type SourceRegion -> Eff r (Monotype SourceRegion) Source #
data TypeConvertError Source #
Constructors
| HigherRankTypesNotSupported (Polytype SourceRegion) | |
| NotSupported Text |