symantic-lib-0.0.2.20170703: Symantics for common types.

Safe HaskellNone
LanguageHaskell2010

Language.Symantic.Lib.If

Contents

Description

Symantic for If.

Synopsis

Type If

data If Source #

Instances

ClassInstancesFor * If Source # 

Methods

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

TypeInstancesFor * If 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 * If Source # 

Methods

nameTyOf :: proxy c -> Mod NameTy #

isNameTyOp :: proxy c -> Bool #

ModuleFor * src ss If Source # 

Methods

moduleFor :: (PathMod, Module ss If) #

Gram_Term_AtomsFor * src ss g If Source # 

Methods

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

type Sym * If Source # 
type Sym * If = Sym_If

Class Sym_If

class Sym_If term where Source #

Methods

if_ :: term Bool -> term a -> term a -> term a Source #

if_ :: Sym_If (UnT term) => Trans term => term Bool -> term a -> term a -> term a Source #

Instances

Sym_If Eval Source # 

Methods

if_ :: Eval Bool -> Eval a -> Eval a -> Eval a Source #

Sym_If View Source # 

Methods

if_ :: View Bool -> View a -> View a -> View a Source #

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

Methods

if_ :: BetaT term Bool -> BetaT term a -> BetaT term a -> BetaT term a Source #

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

Methods

if_ :: Dup r1 r2 Bool -> Dup r1 r2 a -> Dup r1 r2 a -> Dup r1 r2 a Source #

Types

Terms

teIf_if :: TermDef If '[Proxy a] (() #> (Bool -> a -> a -> a)) Source #