ddc-source-tetra-0.4.3.1: Disciplined Disciple Compiler source language.

Safe HaskellNone
LanguageHaskell98

DDC.Source.Tetra.Exp.Bind

Synopsis

Documentation

type Name = Text Source #

data Bind Source #

Binding occurrence of a variable.

Constructors

BNone 
BAnon 
BName !Text 

Instances

Eq Bind Source # 

Methods

(==) :: Bind -> Bind -> Bool #

(/=) :: Bind -> Bind -> Bool #

Ord Bind Source # 

Methods

compare :: Bind -> Bind -> Ordering #

(<) :: Bind -> Bind -> Bool #

(<=) :: Bind -> Bind -> Bool #

(>) :: Bind -> Bind -> Bool #

(>=) :: Bind -> Bind -> Bool #

max :: Bind -> Bind -> Bind #

min :: Bind -> Bind -> Bind #

Show Bind Source # 

Methods

showsPrec :: Int -> Bind -> ShowS #

show :: Bind -> String #

showList :: [Bind] -> ShowS #

data Bound Source #

Bound occurrence of a variable.

Constructors

UName !Text 
UIx !Int 
UHole 

Instances

Eq Bound Source # 

Methods

(==) :: Bound -> Bound -> Bool #

(/=) :: Bound -> Bound -> Bool #

Ord Bound Source # 

Methods

compare :: Bound -> Bound -> Ordering #

(<) :: Bound -> Bound -> Bool #

(<=) :: Bound -> Bound -> Bool #

(>) :: Bound -> Bound -> Bool #

(>=) :: Bound -> Bound -> Bool #

max :: Bound -> Bound -> Bound #

min :: Bound -> Bound -> Bound #

Show Bound Source # 

Methods

showsPrec :: Int -> Bound -> ShowS #

show :: Bound -> String #

showList :: [Bound] -> ShowS #

takeBoundOfBind :: Bind -> Maybe Bound Source #

Take the corresponding Bound of a Bind, if there is one.