symantic-lib-0.0.3.20180213: Symantics for common types.

Safe HaskellNone
LanguageHaskell2010

Language.Symantic.Lib.Monoid

Contents

Description

Symantic for Monoid.

Synopsis

Class Sym_Monoid

class Sym_Monoid term where Source #

Methods

mempty :: Monoid a => term a Source #

mappend :: Monoid a => term a -> term a -> term a Source #

mempty :: Sym_Monoid (UnT term) => Trans term => Monoid a => term a Source #

mappend :: Sym_Monoid (UnT term) => Trans term => Monoid a => term a -> term a -> term a Source #

Instances

Sym_Monoid View Source # 

Methods

mempty :: Monoid a => View a Source #

mappend :: Monoid a => View a -> View a -> View a Source #

Sym_Monoid Eval Source # 

Methods

mempty :: Monoid a => Eval a Source #

mappend :: Monoid a => Eval a -> Eval a -> Eval a Source #

(Sym_Monoid term, Sym_Lambda term) => Sym_Monoid (BetaT term) Source # 

Methods

mempty :: Monoid a => BetaT term a Source #

mappend :: Monoid a => BetaT term a -> BetaT term a -> BetaT term a Source #

(Sym_Monoid r1, Sym_Monoid r2) => Sym_Monoid (Dup r1 r2) Source # 

Methods

mempty :: Monoid a => Dup r1 r2 a Source #

mappend :: Monoid a => Dup r1 r2 a -> Dup r1 r2 a -> Dup r1 r2 a Source #

Types

tyMonoid :: Source src => Type src vs a -> Type src vs (Monoid a) Source #

Terms

teMonoid_mappend :: TermDef Monoid '[Proxy a] (Monoid a #> (a -> a -> a)) Source #

Orphan instances

ClassInstancesFor (* -> Constraint) Monoid Source # 

Methods

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

TypeInstancesFor (* -> Constraint) Monoid Source # 

Methods

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

NameTyOf (* -> Constraint) Monoid Source # 

Methods

nameTyOf :: proxy c -> Mod NameTy #

isNameTyOp :: proxy c -> Bool #

FixityOf (* -> Constraint) Monoid Source # 

Methods

fixityOf :: proxy c -> Maybe Fixity #

(Source src, SymInj (* -> Constraint) ss Monoid) => ModuleFor (* -> Constraint) src ss Monoid Source # 

Methods

moduleFor :: (PathMod, Module ss Monoid) #

Gram_Term_AtomsFor (* -> Constraint) src ss g Monoid Source # 

Methods

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