symantic-lib-0.0.5.20190614: Symantics for common types.

Safe HaskellNone
LanguageHaskell2010

Language.Symantic.Lib.Ratio

Contents

Description

Symantic for Ratio.

Synopsis

Class Sym_Ratio

class Sym_Ratio term where Source #

Minimal complete definition

Nothing

Methods

ratio :: Integral a => term a -> term a -> term (Ratio a) Source #

numerator :: term (Ratio a) -> term a Source #

denominator :: term (Ratio a) -> term a Source #

ratio :: Sym_Ratio (UnT term) => Trans term => Integral a => term a -> term a -> term (Ratio a) Source #

numerator :: Sym_Ratio (UnT term) => Trans term => term (Ratio a) -> term a Source #

denominator :: Sym_Ratio (UnT term) => Trans term => term (Ratio a) -> term a Source #

Instances
Sym_Ratio View Source # 
Instance details

Defined in Language.Symantic.Lib.Ratio

Methods

ratio :: Integral a => View a -> View a -> View (Ratio a) Source #

numerator :: View (Ratio a) -> View a Source #

denominator :: View (Ratio a) -> View a Source #

Sym_Ratio Eval Source # 
Instance details

Defined in Language.Symantic.Lib.Ratio

Methods

ratio :: Integral a => Eval a -> Eval a -> Eval (Ratio a) Source #

numerator :: Eval (Ratio a) -> Eval a Source #

denominator :: Eval (Ratio a) -> Eval a Source #

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

Defined in Language.Symantic.Lib.Ratio

Methods

ratio :: Integral a => BetaT term a -> BetaT term a -> BetaT term (Ratio a) Source #

numerator :: BetaT term (Ratio a) -> BetaT term a Source #

denominator :: BetaT term (Ratio a) -> BetaT term a Source #

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

Defined in Language.Symantic.Lib.Ratio

Methods

ratio :: Integral a => Dup r1 r2 a -> Dup r1 r2 a -> Dup r1 r2 (Ratio a) Source #

numerator :: Dup r1 r2 (Ratio a) -> Dup r1 r2 a Source #

denominator :: Dup r1 r2 (Ratio a) -> Dup r1 r2 a Source #

Types

tyRatio :: Source src => Type src vs a -> Type src vs (Ratio a) Source #

Terms

teRatio :: TermDef Ratio '[Proxy a] (Integral a #> (a -> a -> Ratio a)) Source #

Orphan instances

ClassInstancesFor Ratio Source # 
Instance details

Methods

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

TypeInstancesFor Ratio Source # 
Instance details

Methods

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

NameTyOf Ratio Source # 
Instance details

Methods

nameTyOf :: proxy Ratio -> Mod NameTy #

isNameTyOp :: proxy Ratio -> Bool #

FixityOf Ratio Source # 
Instance details

Methods

fixityOf :: proxy Ratio -> Maybe Fixity #

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

Methods

moduleFor :: (PathMod, Module src ss) #

Gram_Term_AtomsFor src ss g Ratio Source # 
Instance details

Methods

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