Safe Haskell | None |
---|---|
Language | Haskell2010 |
Module with parser etc.
Documentation
parseBrainheck :: FilePath -> Text -> Either (ParseError (Token Text) Void) (Syntax Char) Source #
Parse and return an error or a syntax tree
Types
Syntax tree for brainfuck
Instances
Recursive (Syntax a) Source # | |
Defined in Brainheck project :: Syntax a -> Base (Syntax a) (Syntax a) # cata :: (Base (Syntax a) a0 -> a0) -> Syntax a -> a0 # para :: (Base (Syntax a) (Syntax a, a0) -> a0) -> Syntax a -> a0 # gpara :: (Corecursive (Syntax a), Comonad w) => (forall b. Base (Syntax a) (w b) -> w (Base (Syntax a) b)) -> (Base (Syntax a) (EnvT (Syntax a) w a0) -> a0) -> Syntax a -> a0 # prepro :: Corecursive (Syntax a) => (forall b. Base (Syntax a) b -> Base (Syntax a) b) -> (Base (Syntax a) a0 -> a0) -> Syntax a -> a0 # gprepro :: (Corecursive (Syntax a), Comonad w) => (forall b. Base (Syntax a) (w b) -> w (Base (Syntax a) b)) -> (forall c. Base (Syntax a) c -> Base (Syntax a) c) -> (Base (Syntax a) (w a0) -> a0) -> Syntax a -> a0 # | |
Corecursive (Syntax a) Source # | |
Defined in Brainheck embed :: Base (Syntax a) (Syntax a) -> Syntax a # ana :: (a0 -> Base (Syntax a) a0) -> a0 -> Syntax a # apo :: (a0 -> Base (Syntax a) (Either (Syntax a) a0)) -> a0 -> Syntax a # postpro :: Recursive (Syntax a) => (forall b. Base (Syntax a) b -> Base (Syntax a) b) -> (a0 -> Base (Syntax a) a0) -> a0 -> Syntax a # gpostpro :: (Recursive (Syntax a), Monad m) => (forall b. m (Base (Syntax a) b) -> Base (Syntax a) (m b)) -> (forall c. Base (Syntax a) c -> Base (Syntax a) c) -> (a0 -> Base (Syntax a) (m a0)) -> a0 -> Syntax a # | |
type Base (Syntax a) Source # | |