Version 7.0
Copyright © 2021 Lowell D. Thomas
APG
… an ABNF Parser Generator
api Directory Reference

The parser generator Application Programming Interface..

More...

Directory dependency graph for api:
api

Files

file  api.c [code]
 Some basic functions of the APG Application Programming Interface.
 
file  api.h [code]
 Public header file for the APG API suite of functions.
 
file  apip.h [code]
 Private header file for the APG API suite of functions.
 
file  attributes.c [code]
 The main functions driving the attributes determination.
 
file  attributes.h [code]
 Header file for the attributes functions.
 
file  input.c [code]
 The API input functions. These functions assist with retrieving the ABNF grammar or grammars for processing.
 
file  output.c [code]
 Constructs the source and header files for the generated parser.
 
file  pppt.c [code]
 All of the code for generating Partially-Predictive Parsing Tables (PPPT).
 
file  rule-attributes.c [code]
 Determines each rule's recursive attributes – left, nested, right and cyclic – and non-recursive attributes – empty and finite.
 
file  rule-dependencies.c [code]
 For each rule, R, determines the list of other rules R references in its syntax tree.
 
file  sabnf-grammar.c [code]
 
file  sabnf-grammar.h [code]
 
file  semantic-callbacks.c [code]
 These are the callback functions which translate the AST from the syntax phase.
 
file  semantics.c [code]
 Processes the semantics phase. Parses the grammar and translates the AST to opcodes. The compiler, so to speak.
 
file  semantics.h [code]
 Header file for the semantic translation functions.
 
file  syntax-callbacks.c [code]
 The callback functions called by the parser. These are the functions that find and report the syntax errors.
 
file  syntax.c [code]
 Processes the syntax phase. Parses the grammar and reports any syntax errors.
 
file  syntax.h [code]
 Header file for the syntax phase functions.
 

Detailed Description

The parser generator Application Programming Interface..

APG Version 7.0 is licensed under the 2-Clause BSD License,
an Open Source Initiative Approved License.