File: debug.el.html

To provide better support for debugging parsers, this framework provides the interface for debugging. The work of parsing and controlling and stepping through the parsing work must be implemented by the parser.

Fortunately, the nature of language support files means that the parser may not need to be instrumented first.

The debugger uses EIEIO objects. One object controls the user interface, including stepping, data-view, queries. A second object implemented here represents the parser itself. A third represents a parser independent frame which knows how to highlight the parser buffer. Each parser must implement the interface and override any methods as needed.

Defined variables (8)

semantic-debug-current-interfaceThe debugger interface currently active for this buffer.
semantic-debug-current-parserThe parser current active for this buffer.
semantic-debug-enabledNon-nil when debugging a parser.
semantic-debug-mode-mapKeymap used when in semantic-debug-node.
semantic-debug-parser-classClass to create when building a debug parser object.
semantic-debug-parser-debugger-sourceLocation of the debug parser class.
semantic-debug-parser-sourceFor any buffer, the file name (no path) of the parser.
semantic-debug-user-commandThe command the user is requesting.

Defined functions (12)

semantic-debug()
semantic-debug-break(FRAME)
semantic-debug-down()
semantic-debug-frame-highlight(ARG &rest ARGS)
semantic-debug-highlight-lexical-token(ARG &rest ARGS)
semantic-debug-interface-p(OBJ)
semantic-debug-parser(&rest _)
semantic-debug-parser--eieio-childp(OBJ)
semantic-debug-parser-break(ARG &rest ARGS)
semantic-debug-parser-next(ARG &rest ARGS)
semantic-debug-parser-step(ARG &rest ARGS)
semantic-debug-set-source-location(ARG &rest ARGS)

Defined faces (0)