The parserlib package defines m3build procedures that build interfaces for tokens, lexers, and parsers.
token(spec) reads a token specification file named spec.t and generates a token interface named specTok.i3 which can be imported by generated lexers and parsers, or extended.
lexer(tok, spec) reads a token specification tok.t and a lexer specification file named spec.l, and generates an extendable lexer interface named specLex.i3 which imports the token interface specTok.i3.
parser(tok, spec) reads a token specification tok.t and a parser specification file named spec.l, and generates an extendable parser interface named specLex.i3 which imports the token interface specTok.i3.
extended(nm) reads the source specifications specified in the extfile named nm.e, and generates an extended token, lexer, or parser interface named nm.i3.
Token(spec), Lexer(tok, spec), Parser(tok, spec), and Extended(nm) are like the respective procedures token, lexer, parser, and extended, but they also make the input specification and generated interface available to importers outside the current package.
token_named(nm, spec) is like token, but the generated
interface is named nm.i3.
lexer_named(tok_nm, tok_spec, out_nm, out_spec) and
parser_named(tok_nm, tok_spec, out_nm, out_spec) are like
lexer and parser, but the imported
token interface is named tok_nm.i3, and the generated
interface is named out_nm.i3.
Token_named(nm, spec),
Lexer_named(tok_nm, tok_spec, out_nm, out_spec), and
Parser_named(tok_nm, tok_spec, out_nm,
out_spec) are like the respective procedures token_named,
lexer_named, and parser_named, but they also make
the input specification and generated interface available to importers
outside the current package.
$Id: m3build.html,v 1.4 2001/01/08 06:53:22 kp Exp $