Safe Haskell | None |
---|
Documentation
type ParserMonad = StateT ParserState IOSource
setParserState :: ParserState -> ParserMonad ()Source
runParser :: FilePath -> ParserState -> ParserMonad a -> IO (a, ParserState)Source
pushScope :: ParserMonad ()Source
popScope :: ParserMonad ()Source
data ParserState Source
mkLoc :: Token -> ParserMonad LocationSource
withSymbol :: Location -> String -> (Location -> Location -> SymType -> ParserMonad ()) -> ParserMonad ()Source
requireClass :: (Class -> ParserMonad ()) -> Location -> Location -> SymType -> ParserMonad ()Source
requireEntity :: (Entity -> ParserMonad ()) -> Location -> Location -> SymType -> ParserMonad ()Source
requireEntityField :: Location -> FieldName -> ((Entity, Field) -> ParserMonad ()) -> Location -> Location -> SymType -> ParserMonad ()Source
requireField :: (Field -> ParserMonad ()) -> Location -> Location -> SymType -> ParserMonad ()Source
postValidation :: Module -> ParserState -> IO IntSource