cimple-0.0.22: Simple C-like programming language
Safe HaskellNone
LanguageHaskell2010

Language.Cimple.MapAst

Documentation

mapAst :: (MapAst itext otext a, Applicative f, HasCallStack) => AstActions f itext otext -> a -> f (Mapped itext otext a) Source #

mapFileAst :: (MapAst itext otext a, Applicative f, HasCallStack) => AstActions f itext otext -> FilePath -> a -> f (Mapped itext otext a) Source #

doFiles :: AstActions f itext otext -> [(FilePath, [Node (Lexeme itext)])] -> f [(FilePath, [Node (Lexeme otext)])] -> f [(FilePath, [Node (Lexeme otext)])] Source #

doFile :: AstActions f itext otext -> (FilePath, [Node (Lexeme itext)]) -> f (FilePath, [Node (Lexeme otext)]) -> f (FilePath, [Node (Lexeme otext)]) Source #

doNodes :: AstActions f itext otext -> FilePath -> [Node (Lexeme itext)] -> f [Node (Lexeme otext)] -> f [Node (Lexeme otext)] Source #

doNode :: AstActions f itext otext -> FilePath -> Node (Lexeme itext) -> f (Node (Lexeme otext)) -> f (Node (Lexeme otext)) Source #

doComment :: AstActions f itext otext -> FilePath -> Comment (Lexeme itext) -> f (Comment (Lexeme otext)) -> f (Comment (Lexeme otext)) Source #

doComments :: AstActions f itext otext -> FilePath -> [Comment (Lexeme itext)] -> f [Comment (Lexeme otext)] -> f [Comment (Lexeme otext)] Source #

doLexemes :: AstActions f itext otext -> FilePath -> [Lexeme itext] -> f [Lexeme otext] -> f [Lexeme otext] Source #

doLexeme :: AstActions f itext otext -> FilePath -> Lexeme itext -> f (Lexeme otext) -> f (Lexeme otext) Source #

doText :: AstActions f itext otext -> FilePath -> itext -> f otext Source #

data AstActions f itext otext Source #

astActions :: Applicative f => (itext -> f otext) -> AstActions f itext otext Source #

type TextActions f itext otext = AstActions f itext otext Source #

textActions :: Applicative f => (itext -> f otext) -> TextActions f itext otext Source #

type IdentityActions f text = AstActions f text text Source #