symantic-lib-0.0.4.20180831: Symantics for common types.

Safe HaskellNone
LanguageHaskell2010

Language.Symantic.Lib.MonoFoldable

Contents

Description

Symantic for MonoFoldable.

Synopsis

Class Sym_MonoFoldable

class Sym_MonoFoldable term where Source #

Methods

ofoldMap :: (MonoFoldable o, Monoid m) => term (Element o -> m) -> term o -> term m Source #

ofoldr :: MonoFoldable o => term (Element o -> b -> b) -> term b -> term o -> term b Source #

ofoldl' :: MonoFoldable o => term (b -> Element o -> b) -> term b -> term o -> term b Source #

olength :: MonoFoldable o => term o -> term Int Source #

onull :: MonoFoldable o => term o -> term Bool Source #

oall :: MonoFoldable o => term (Element o -> Bool) -> term o -> term Bool Source #

oany :: MonoFoldable o => term (Element o -> Bool) -> term o -> term Bool Source #

otoList :: MonoFoldable o => term o -> term [Element o] Source #

ofoldMap :: Sym_MonoFoldable (UnT term) => Trans term => MonoFoldable o => Monoid m => term (Element o -> m) -> term o -> term m Source #

ofoldr :: Sym_MonoFoldable (UnT term) => Trans term => MonoFoldable o => term (Element o -> b -> b) -> term b -> term o -> term b Source #

ofoldl' :: Sym_MonoFoldable (UnT term) => Trans term => MonoFoldable o => term (b -> Element o -> b) -> term b -> term o -> term b Source #

olength :: Sym_MonoFoldable (UnT term) => Trans term => MonoFoldable o => term o -> term Int Source #

onull :: Sym_MonoFoldable (UnT term) => Trans term => MonoFoldable o => term o -> term Bool Source #

oall :: Sym_MonoFoldable (UnT term) => Trans term => MonoFoldable o => term (Element o -> Bool) -> term o -> term Bool Source #

oany :: Sym_MonoFoldable (UnT term) => Trans term => MonoFoldable o => term (Element o -> Bool) -> term o -> term Bool Source #

otoList :: Sym_MonoFoldable (UnT term) => Trans term => MonoFoldable o => term o -> term [Element o] Source #

Instances
Sym_MonoFoldable View Source # 
Instance details

Defined in Language.Symantic.Lib.MonoFoldable

Methods

ofoldMap :: (MonoFoldable o, Monoid m) => View (Element o -> m) -> View o -> View m Source #

ofoldr :: MonoFoldable o => View (Element o -> b -> b) -> View b -> View o -> View b Source #

ofoldl' :: MonoFoldable o => View (b -> Element o -> b) -> View b -> View o -> View b Source #

olength :: MonoFoldable o => View o -> View Int Source #

onull :: MonoFoldable o => View o -> View Bool Source #

oall :: MonoFoldable o => View (Element o -> Bool) -> View o -> View Bool Source #

oany :: MonoFoldable o => View (Element o -> Bool) -> View o -> View Bool Source #

otoList :: MonoFoldable o => View o -> View [Element o] Source #

Sym_MonoFoldable Eval Source # 
Instance details

Defined in Language.Symantic.Lib.MonoFoldable

Methods

ofoldMap :: (MonoFoldable o, Monoid m) => Eval (Element o -> m) -> Eval o -> Eval m Source #

ofoldr :: MonoFoldable o => Eval (Element o -> b -> b) -> Eval b -> Eval o -> Eval b Source #

ofoldl' :: MonoFoldable o => Eval (b -> Element o -> b) -> Eval b -> Eval o -> Eval b Source #

olength :: MonoFoldable o => Eval o -> Eval Int Source #

onull :: MonoFoldable o => Eval o -> Eval Bool Source #

oall :: MonoFoldable o => Eval (Element o -> Bool) -> Eval o -> Eval Bool Source #

oany :: MonoFoldable o => Eval (Element o -> Bool) -> Eval o -> Eval Bool Source #

otoList :: MonoFoldable o => Eval o -> Eval [Element o] Source #

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

Defined in Language.Symantic.Lib.MonoFoldable

Methods

ofoldMap :: (MonoFoldable o, Monoid m) => BetaT term (Element o -> m) -> BetaT term o -> BetaT term m Source #

ofoldr :: MonoFoldable o => BetaT term (Element o -> b -> b) -> BetaT term b -> BetaT term o -> BetaT term b Source #

ofoldl' :: MonoFoldable o => BetaT term (b -> Element o -> b) -> BetaT term b -> BetaT term o -> BetaT term b Source #

olength :: MonoFoldable o => BetaT term o -> BetaT term Int Source #

onull :: MonoFoldable o => BetaT term o -> BetaT term Bool Source #

oall :: MonoFoldable o => BetaT term (Element o -> Bool) -> BetaT term o -> BetaT term Bool Source #

oany :: MonoFoldable o => BetaT term (Element o -> Bool) -> BetaT term o -> BetaT term Bool Source #

otoList :: MonoFoldable o => BetaT term o -> BetaT term [Element o] Source #

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

Defined in Language.Symantic.Lib.MonoFoldable

Methods

ofoldMap :: (MonoFoldable o, Monoid m) => Dup r1 r2 (Element o -> m) -> Dup r1 r2 o -> Dup r1 r2 m Source #

ofoldr :: MonoFoldable o => Dup r1 r2 (Element o -> b -> b) -> Dup r1 r2 b -> Dup r1 r2 o -> Dup r1 r2 b Source #

ofoldl' :: MonoFoldable o => Dup r1 r2 (b -> Element o -> b) -> Dup r1 r2 b -> Dup r1 r2 o -> Dup r1 r2 b Source #

olength :: MonoFoldable o => Dup r1 r2 o -> Dup r1 r2 Int Source #

onull :: MonoFoldable o => Dup r1 r2 o -> Dup r1 r2 Bool Source #

oall :: MonoFoldable o => Dup r1 r2 (Element o -> Bool) -> Dup r1 r2 o -> Dup r1 r2 Bool Source #

oany :: MonoFoldable o => Dup r1 r2 (Element o -> Bool) -> Dup r1 r2 o -> Dup r1 r2 Bool Source #

otoList :: MonoFoldable o => Dup r1 r2 o -> Dup r1 r2 [Element o] Source #

Types

tyMonoFoldable :: Source src => Type src vs a -> Type src vs (MonoFoldable a) Source #

Terms

teMonoFoldable_ofoldMap :: TermDef MonoFoldable '[Proxy o, Proxy e, Proxy m] ((MonoFoldable o # (Monoid m # (e #~ Element o))) #> ((e -> m) -> o -> m)) Source #

teMonoFoldable_ofoldr :: TermDef MonoFoldable '[Proxy o, Proxy e, Proxy a] ((MonoFoldable o # (e #~ Element o)) #> ((e -> a -> a) -> a -> o -> a)) Source #

teMonoFoldable_ofoldl' :: TermDef MonoFoldable '[Proxy o, Proxy e, Proxy a] ((MonoFoldable o # (e #~ Element o)) #> ((a -> e -> a) -> a -> o -> a)) Source #

Orphan instances

ClassInstancesFor MonoFoldable Source # 
Instance details

Methods

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

TypeInstancesFor MonoFoldable Source # 
Instance details

Methods

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

NameTyOf MonoFoldable Source # 
Instance details

Methods

nameTyOf :: proxy MonoFoldable -> Mod NameTy #

isNameTyOp :: proxy MonoFoldable -> Bool #

FixityOf MonoFoldable Source # 
Instance details

Methods

fixityOf :: proxy MonoFoldable -> Maybe Fixity #

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

Methods

moduleFor :: (PathMod, Module src ss) #

Gram_Term_AtomsFor src ss g MonoFoldable Source # 
Instance details

Methods

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