Apigen.Parser.SymbolTable
type Name = ([Text], [Text]) Source #
type SId = Int Source #
type Sym = Decl (Lexeme SId) Source #
type NameToSId = HashMap Name SId Source #
type SIdToName = HashMap SId Name Source #
type M s a = State (SIdToName, s) a Source #
displayWithin :: [Text] -> Name -> String Source #
display :: Name -> String Source #
mustLookup :: SIdToName -> SId -> Name Source #
mustLookupM :: SId -> M s Name Source #
resolve :: Traversable t => SIdToName -> t (Lexeme SId) -> t (Lexeme Name) Source #
resolveM :: Traversable t => t (Lexeme SId) -> State (SIdToName, s) (t (Lexeme Name)) Source #
renameM :: (Name -> Name) -> SId -> M s () Source #
insert :: Name -> M s SId Source #