ADPfusion-0.5.2.2: Efficient, high-level dynamic programming.

Safe HaskellNone
LanguageHaskell2010

ADP.Fusion.Term.Edge.Type

Synopsis

Documentation

newtype From Source #

Constructors

From 

Fields

Instances

Eq From Source # 

Methods

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

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

Ord From Source # 

Methods

compare :: From -> From -> Ordering #

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

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

(>) :: From -> From -> Bool #

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

max :: From -> From -> From #

min :: From -> From -> From #

Show From Source # 

Methods

showsPrec :: Int -> From -> ShowS #

show :: From -> String #

showList :: [From] -> ShowS #

newtype To Source #

Constructors

To 

Fields

Instances

Eq To Source # 

Methods

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

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

Ord To Source # 

Methods

compare :: To -> To -> Ordering #

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

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

(>) :: To -> To -> Bool #

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

max :: To -> To -> To #

min :: To -> To -> To #

Show To Source # 

Methods

showsPrec :: Int -> To -> ShowS #

show :: To -> String #

showList :: [To] -> ShowS #

data Edge Source #

An edge in a graph. As a parsing symbol, it will provide (From:.To) pairs.

Constructors

Edge 

Instances

Build Edge Source # 

Associated Types

type Stack Edge :: * Source #

Methods

build :: Edge -> Stack Edge Source #

(Show i, Show (RunningIndex i), Show (Elm ls i)) => Show (Elm ((:!:) ls Edge) i) Source # 

Methods

showsPrec :: Int -> Elm (ls :!: Edge) i -> ShowS #

show :: Elm (ls :!: Edge) i -> String #

showList :: [Elm (ls :!: Edge) i] -> ShowS #

Element ls i => Element ((:!:) ls Edge) i Source # 

Associated Types

data Elm ((:!:) ls Edge) i :: * Source #

type RecElm ((:!:) ls Edge) i :: * Source #

type Arg ((:!:) ls Edge) :: * Source #

Methods

getArg :: Elm (ls :!: Edge) i -> Arg (ls :!: Edge) Source #

getIdx :: Elm (ls :!: Edge) i -> RunningIndex i Source #

getElm :: Elm (ls :!: Edge) i -> RecElm (ls :!: Edge) i Source #

type Stack Edge Source # 
type TermArg Edge Source # 
data Elm ((:!:) ls Edge) Source # 
data Elm ((:!:) ls Edge) = ElmEdge !((:.) From To) !(RunningIndex i) (Elm ls i)
type Arg ((:!:) ls Edge) Source # 
type Arg ((:!:) ls Edge) = (:.) (Arg ls) ((:.) From To)