symantic-lib-0.0.5.20190614: Symantics for common types.

Safe HaskellNone
LanguageHaskell2010

Language.Symantic.Lib.Ord

Contents

Description

Symantic for Ord.

Synopsis

Class Sym_Ordering

class Sym_Eq term => Sym_Ordering term where Source #

Minimal complete definition

Nothing

Methods

ordering :: Ordering -> term Ordering Source #

ordering :: Sym_Ordering (UnT term) => Trans term => Ordering -> term Ordering Source #

Instances
Sym_Ordering View Source # 
Instance details

Defined in Language.Symantic.Lib.Ord

Sym_Ordering Eval Source # 
Instance details

Defined in Language.Symantic.Lib.Ord

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

Defined in Language.Symantic.Lib.Ord

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

Defined in Language.Symantic.Lib.Ord

Methods

ordering :: Ordering -> Dup r1 r2 Ordering Source #

Types

tyOrdering :: Source src => LenInj vs => Type src vs Ordering Source #

Terms

teOrdering :: Source src => SymInj ss Ordering => Ordering -> Term src ss ts '[] (() #> Ordering) Source #

Class Sym_Ord

class Sym_Eq term => Sym_Ord term where Source #

Minimal complete definition

Nothing

Methods

compare :: Ord a => term a -> term a -> term Ordering Source #

(<) :: Ord a => term a -> term a -> term Bool infix 4 Source #

(<=) :: Ord a => term a -> term a -> term Bool infix 4 Source #

(>) :: Ord a => term a -> term a -> term Bool infix 4 Source #

(>=) :: Ord a => term a -> term a -> term Bool infix 4 Source #

max :: Ord a => term a -> term a -> term a Source #

min :: Ord a => term a -> term a -> term a Source #

compare :: Sym_Ord (UnT term) => Trans term => Ord a => term a -> term a -> term Ordering Source #

(<) :: Sym_Ord (UnT term) => Trans term => Ord a => term a -> term a -> term Bool infix 4 Source #

(<=) :: Sym_Ord (UnT term) => Trans term => Ord a => term a -> term a -> term Bool infix 4 Source #

(>) :: Sym_Ord (UnT term) => Trans term => Ord a => term a -> term a -> term Bool infix 4 Source #

(>=) :: Sym_Ord (UnT term) => Trans term => Ord a => term a -> term a -> term Bool infix 4 Source #

max :: Sym_Ord (UnT term) => Trans term => Ord a => term a -> term a -> term a Source #

min :: Sym_Ord (UnT term) => Trans term => Ord a => term a -> term a -> term a Source #

Instances
Sym_Ord View Source # 
Instance details

Defined in Language.Symantic.Lib.Ord

Methods

compare :: Ord a => View a -> View a -> View Ordering Source #

(<) :: Ord a => View a -> View a -> View Bool Source #

(<=) :: Ord a => View a -> View a -> View Bool Source #

(>) :: Ord a => View a -> View a -> View Bool Source #

(>=) :: Ord a => View a -> View a -> View Bool Source #

max :: Ord a => View a -> View a -> View a Source #

min :: Ord a => View a -> View a -> View a Source #

Sym_Ord Eval Source # 
Instance details

Defined in Language.Symantic.Lib.Ord

Methods

compare :: Ord a => Eval a -> Eval a -> Eval Ordering Source #

(<) :: Ord a => Eval a -> Eval a -> Eval Bool Source #

(<=) :: Ord a => Eval a -> Eval a -> Eval Bool Source #

(>) :: Ord a => Eval a -> Eval a -> Eval Bool Source #

(>=) :: Ord a => Eval a -> Eval a -> Eval Bool Source #

max :: Ord a => Eval a -> Eval a -> Eval a Source #

min :: Ord a => Eval a -> Eval a -> Eval a Source #

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

Defined in Language.Symantic.Lib.Ord

Methods

compare :: Ord a => BetaT term a -> BetaT term a -> BetaT term Ordering Source #

(<) :: Ord a => BetaT term a -> BetaT term a -> BetaT term Bool Source #

(<=) :: Ord a => BetaT term a -> BetaT term a -> BetaT term Bool Source #

(>) :: Ord a => BetaT term a -> BetaT term a -> BetaT term Bool Source #

(>=) :: Ord a => BetaT term a -> BetaT term a -> BetaT term Bool Source #

max :: Ord a => BetaT term a -> BetaT term a -> BetaT term a Source #

min :: Ord a => BetaT term a -> BetaT term a -> BetaT term a Source #

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

Defined in Language.Symantic.Lib.Ord

Methods

compare :: Ord a => Dup r1 r2 a -> Dup r1 r2 a -> Dup r1 r2 Ordering Source #

(<) :: Ord a => Dup r1 r2 a -> Dup r1 r2 a -> Dup r1 r2 Bool Source #

(<=) :: Ord a => Dup r1 r2 a -> Dup r1 r2 a -> Dup r1 r2 Bool Source #

(>) :: Ord a => Dup r1 r2 a -> Dup r1 r2 a -> Dup r1 r2 Bool Source #

(>=) :: Ord a => Dup r1 r2 a -> Dup r1 r2 a -> Dup r1 r2 Bool Source #

max :: Ord a => Dup r1 r2 a -> Dup r1 r2 a -> Dup r1 r2 a Source #

min :: Ord a => Dup r1 r2 a -> Dup r1 r2 a -> Dup r1 r2 a Source #

Types

tyOrd :: Source src => Type src vs a -> Type src vs (Ord a) Source #

Terms

teOrd_compare :: TermDef Ord '[Proxy a] (Ord a #> (a -> a -> Ordering)) Source #

teOrd_le :: TermDef Ord '[Proxy a] (Ord a #> (a -> a -> Bool)) Source #

teOrd_lt :: TermDef Ord '[Proxy a] (Ord a #> (a -> a -> Bool)) Source #

teOrd_ge :: TermDef Ord '[Proxy a] (Ord a #> (a -> a -> Bool)) Source #

teOrd_gt :: TermDef Ord '[Proxy a] (Ord a #> (a -> a -> Bool)) Source #

teOrd_min :: TermDef Ord '[Proxy a] (Ord a #> (a -> a -> a)) Source #

teOrd_max :: TermDef Ord '[Proxy a] (Ord a #> (a -> a -> a)) Source #

Orphan instances

ClassInstancesFor Ordering Source # 
Instance details

Methods

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

TypeInstancesFor Ordering Source # 
Instance details

Methods

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

NameTyOf Ordering Source # 
Instance details

Methods

nameTyOf :: proxy Ordering -> Mod NameTy #

isNameTyOp :: proxy Ordering -> Bool #

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

Methods

moduleFor :: (PathMod, Module src ss) #

Gram_Term_AtomsFor src ss g Ordering Source # 
Instance details

Methods

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

ClassInstancesFor Ord Source # 
Instance details

Methods

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

TypeInstancesFor Ord Source # 
Instance details

Methods

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

NameTyOf Ord Source # 
Instance details

Methods

nameTyOf :: proxy Ord -> Mod NameTy #

isNameTyOp :: proxy Ord -> Bool #

FixityOf Ord Source # 
Instance details

Methods

fixityOf :: proxy Ord -> Maybe Fixity #

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

Methods

moduleFor :: (PathMod, Module src ss) #

Gram_Term_AtomsFor src ss g Ord Source # 
Instance details

Methods

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