semantic: Parser code
3.1 Parser code
===============
Semantic parsing code is spread across a range of files.
‘semantic.el’
The core infrastructure sets up buffers for parsing, and has all
the core parsing routines. Most parsing routines are overloadable,
so the actual implementation may be somewhere else.
‘semantic-edit.el’
Incremental reparse based on user edits.
‘semantic-grammar.el’
‘semantic-grammar.wy’
Parser for the different grammar languages, and a major mode for
editing grammars in Emacs.
‘semantic-lex.el’
Infrastructure for implementing lexical analyzers. Provides macros
for creating individual analyzers for specific features, and a way
to combine them together.
‘semantic-lex-spp.el’
Infrastructure for a lexical symbolic preprocessor. This was
written to implement the C preprocessor, but could be used for
other lexical preprocessors.
‘bovine/bovine-grammar.el’
‘bovine/bovine-grammar-macros.el’
‘bovine/semantic-bovine.el’
The “bovine” grammar. This is the first grammar mode written for
Semantic and is useful for simple creating simple parsers.
‘wisent/wisent.el’
‘wisent/bison-wisent.el’
‘wisent/semantic-wisent.el’
‘wisent/semantic-debug-grammar.el’
A port of bison to Emacs. This infrastructure lets you create LALR
based parsers for Semantic.
‘semantic-ast.el’
Manage Abstract Syntax Trees for parsers.
‘semantic-debug.el’
Infrastructure for debugging grammars.
‘semantic-util.el’
Various utilities for manipulating tags, such as describing the tag
under point, adding labels, and the all important
‘semantic-something-to-tag-table’.