symantic-lib-0.0.4.20180831: Symantics for common types.

Safe HaskellNone
LanguageHaskell2010

Language.Symantic.Lib.MonoFunctor

Contents

Description

Symantic for MonoFunctor.

Synopsis

Type Element

data Element Source #

Instances
ClassInstancesFor Element Source # 
Instance details

Defined in Language.Symantic.Lib.MonoFunctor

Methods

proveConstraintFor :: Source src => proxy Element -> Type src vs q -> Maybe (Qual q) #

TypeInstancesFor Element Source # 
Instance details

Defined in Language.Symantic.Lib.MonoFunctor

Methods

expandFamFor :: Source src => proxy Element -> Len vs -> Const src fam -> Types src vs ts -> Maybe (Type src vs (Fam fam ts)) #

NameTyOf Element Source # 
Instance details

Defined in Language.Symantic.Lib.MonoFunctor

Methods

nameTyOf :: proxy Element -> Mod NameTy #

isNameTyOp :: proxy Element -> Bool #

type Fam Element (h ': ([] :: [Type])) Source # 
Instance details

Defined in Language.Symantic.Lib.MonoFunctor

type Fam Element (h ': ([] :: [Type])) = Element (UnProxy h :: *)

Types

famElement :: Source src => Type src vs t -> Type src vs (Element t) Source #

Class Sym_MonoFunctor

class Sym_MonoFunctor term where Source #

Methods

omap :: MonoFunctor o => term (Element o -> Element o) -> term o -> term o Source #

omap :: Sym_MonoFunctor (UnT term) => Trans term => MonoFunctor o => term (Element o -> Element o) -> term o -> term o Source #

Instances
Sym_MonoFunctor View Source # 
Instance details

Defined in Language.Symantic.Lib.MonoFunctor

Methods

omap :: MonoFunctor o => View (Element o -> Element o) -> View o -> View o Source #

Sym_MonoFunctor Eval Source # 
Instance details

Defined in Language.Symantic.Lib.MonoFunctor

Methods

omap :: MonoFunctor o => Eval (Element o -> Element o) -> Eval o -> Eval o Source #

(Sym_MonoFunctor term, Sym_Lambda term) => Sym_MonoFunctor (BetaT term) Source # 
Instance details

Defined in Language.Symantic.Lib.MonoFunctor

Methods

omap :: MonoFunctor o => BetaT term (Element o -> Element o) -> BetaT term o -> BetaT term o Source #

(Sym_MonoFunctor r1, Sym_MonoFunctor r2) => Sym_MonoFunctor (Dup r1 r2) Source # 
Instance details

Defined in Language.Symantic.Lib.MonoFunctor

Methods

omap :: MonoFunctor o => Dup r1 r2 (Element o -> Element o) -> Dup r1 r2 o -> Dup r1 r2 o Source #

Types

tyMonoFunctor :: Source src => Type src vs a -> Type src vs (MonoFunctor a) Source #

o0 :: Source src => LenInj vs => KindInj (K o) => Type src (Proxy o ': vs) o Source #

e1 :: Source src => LenInj vs => KindInj (K e) => Type src (a ': (Proxy e ': vs)) e Source #

Terms

teMonoFunctor_omap :: TermDef MonoFunctor '[Proxy o, Proxy e] ((MonoFunctor o # (e #~ Element o)) #> ((e -> e) -> o -> o)) Source #

Orphan instances

ClassInstancesFor MonoFunctor Source # 
Instance details

Methods

proveConstraintFor :: Source src => proxy MonoFunctor -> Type src vs q -> Maybe (Qual q) #

TypeInstancesFor MonoFunctor Source # 
Instance details

Methods

expandFamFor :: Source src => proxy MonoFunctor -> Len vs -> Const src fam -> Types src vs ts -> Maybe (Type src vs (Fam fam ts)) #

NameTyOf MonoFunctor Source # 
Instance details

Methods

nameTyOf :: proxy MonoFunctor -> Mod NameTy #

isNameTyOp :: proxy MonoFunctor -> Bool #

FixityOf MonoFunctor Source # 
Instance details

Methods

fixityOf :: proxy MonoFunctor -> Maybe Fixity #

(Source src, SymInj ss MonoFunctor) => ModuleFor src ss MonoFunctor Source # 
Instance details

Methods

moduleFor :: (PathMod, Module src ss) #

Gram_Term_AtomsFor src ss g MonoFunctor Source # 
Instance details

Methods

g_term_atomsFor :: [CF g (AST_Term src ss)] #