| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Hyper.Type.AST.Var
Description
Variables.
Documentation
newtype Var v (expr :: HyperType) (h :: AHyperType) Source #
Parameterized by term AST and not by its type AST (which currently is its only part used), for future evaluation/complilation support.
Constructors
| Var v |
Instances
| (UnifyGen m (TypeOf expr), HasScope m (ScopeOf expr), VarType v expr, Monad m) => Infer m (Var v expr) Source # | |
Defined in Hyper.Type.AST.Var Methods inferBody :: forall (h :: AHyperType -> Type). (Var v expr # InferChild m h) -> m (Var v expr # h, InferOf (Var v expr) # UVarOf m) Source # inferContext :: proxy0 m -> proxy1 (Var v expr) -> Dict (HNodesConstraint (Var v expr) (Infer m), HNodesConstraint (InferOf (Var v expr)) (UnifyGen m)) Source # | |
| HNodes (Var v expr) Source # | |
Defined in Hyper.Type.AST.Var Associated Types type HNodesConstraint (Var v expr) c Source # type HWitnessType (Var v expr) :: HyperType -> Type Source # Methods hLiftConstraint :: forall c (n :: HyperType) r. HNodesConstraint (Var v expr) c => HWitness (Var v expr) n -> Proxy c -> (c n => r) -> r Source # | |
| Monoid v => HPointed (Var v expr) Source # | |
| HFunctor (Var v expr) Source # | |
| HFoldable (Var v expr) Source # | |
| HTraversable (Var v expr) Source # | |
Defined in Hyper.Type.AST.Var Methods hsequence :: forall f (p :: AHyperType -> Type). Applicative f => (Var v expr # ContainedH f p) -> f (Var v expr # p) Source # | |
| Semigroup v => HApply (Var v expr) Source # | |
| Eq v => ZipMatch (Var v expr) Source # | |
| HContext (Var v expr) Source # | |
| HasInferredType (Var v t) Source # | |
| HMorph (Var v expr0) (Var v expr1) Source # | |
Defined in Hyper.Type.AST.Var Associated Types type MorphConstraint (Var v expr0) (Var v expr1) c Source # data MorphWitness (Var v expr0) (Var v expr1) :: HyperType -> HyperType -> Type Source # Methods morphMap :: (forall (a :: HyperType) (b :: HyperType). MorphWitness (Var v expr0) (Var v expr1) a b -> (p # a) -> q # b) -> (Var v expr0 # p) -> Var v expr1 # q Source # morphLiftConstraint :: forall c (a :: HyperType) (b :: HyperType) r. MorphConstraint (Var v expr0) (Var v expr1) c => MorphWitness (Var v expr0) (Var v expr1) a b -> Proxy c -> (c a b => r) -> r Source # | |
| Eq v => Eq (Var v expr h) Source # | |
| Ord v => Ord (Var v expr h) Source # | |
Defined in Hyper.Type.AST.Var | |
| Show v => Show (Var v expr h) Source # | |
| Generic (Var v expr h) Source # | |
| Binary v => Binary (Var v expr h) Source # | |
| NFData v => NFData (Var v expr h) Source # | |
Defined in Hyper.Type.AST.Var | |
| Pretty v => Pretty (Var v expr h) Source # | |
Defined in Hyper.Type.AST.Var Methods pPrintPrec :: PrettyLevel -> Rational -> Var v expr h -> Doc # pPrint :: Var v expr h -> Doc # pPrintList :: PrettyLevel -> [Var v expr h] -> Doc # | |
| type HWitnessType (Var v expr) Source # | |
Defined in Hyper.Type.AST.Var | |
| type InferOf (Var _1 t) Source # | |
Defined in Hyper.Type.AST.Var | |
| type TypeOf (Var v t) Source # | |
Defined in Hyper.Type.AST.Var | |
| type HNodesConstraint (Var v expr) constraint Source # | |
Defined in Hyper.Type.AST.Var | |
| data MorphWitness (Var v expr0) (Var v expr1) _ _ Source # | |
Defined in Hyper.Type.AST.Var | |
| type MorphConstraint (Var v expr0) (Var v expr1) constraint Source # | |
Defined in Hyper.Type.AST.Var | |
| type Rep (Var v expr h) Source # | |
Defined in Hyper.Type.AST.Var | |