Module

Text.Pretty.PatternArrows

Package
purescript-pattern-arrows
Repository
paluh/purescript-pattern-arrows

#Pattern Source

newtype Pattern u a b

Star has no Lazy instance

Constructors

Instances

#runPattern Source

runPattern :: forall u b a. Pattern u a b -> (a -> StateT u Maybe b)

#pattern Source

pattern :: forall b a u. Pattern u a b -> u -> a -> Maybe b

#mkPattern Source

mkPattern :: forall b a u. (a -> Maybe b) -> Pattern u a b

#mkPattern' Source

mkPattern' :: forall b a u. (a -> StateT u Maybe b) -> Pattern u a b

#fix Source

fix :: forall r a u. (Pattern u a r -> Pattern u a r) -> Pattern u a r

#chainl Source

chainl :: forall r a u. Pattern u a (Tuple a a) -> (r -> r -> r) -> Pattern u a r -> Pattern u a r

#chainr Source

chainr :: forall r a u. Pattern u a (Tuple a a) -> (r -> r -> r) -> Pattern u a r -> Pattern u a r

#wrap' Source

wrap' :: forall r s a u. Pattern u a (Tuple s a) -> (s -> r -> r) -> Pattern u a r -> Pattern u a r

#split' Source

split' :: forall r t s a u. Pattern u a (Tuple s t) -> (s -> t -> r) -> Pattern u a r

#Op Source

class Op op  where

Members

Instances

#Operator Source

data Operator u a r

Constructors

#OperatorTable Source

data OperatorTable u a r

Constructors

#runOperatorTable Source

runOperatorTable :: forall r a u. OperatorTable u a r -> Array (NonEmpty Array (Operator u a r))

#PatternEndo Source

data PatternEndo u a r

Constructors

Instances

#runPatternEndo Source

runPatternEndo :: forall r a u. PatternEndo u a r -> Pattern u a r -> Pattern u a r

#toPatternEndo Source

toPatternEndo :: forall r a u. Operator u a r -> Pattern u a r -> Pattern u a r

#buildPrettyPrinter Source

buildPrettyPrinter :: forall r a u. OperatorTable u a r -> Pattern u a r -> Pattern u a r