1[comment {-*- tcl -*- doctools manpage}]
2[manpage_begin page_util_norm_lemon n 1.0]
3[copyright {2007 Andreas Kupries <andreas_kupries@users.sourceforge.net>}]
4[moddesc   {Parser generator tools}]
5[titledesc {page AST normalization, LEMON}]
6[category  {Page Parser Generator}]
7[require page::util::norm_lemon [opt 0.1]]
8[require snit]
9[keywords page lemon normalization {tree walking} {graph walking}]
10[keywords {parser generator} {text processing}]
11[description]
12[para]
13
14This package provides a single utility command which takes an AST for a
15lemon  grammar and normalizes it in various ways. The result
16is called a [term {Normalized Lemon Grammar Tree}].
17
18[para]
19
20[emph Note] that this package can only be used from within a plugin
21managed by the package [package page::pluginmgr].
22
23[comment {
24    TODO: Document the structure of a LEMON AST,
25          and then of a Normalized LEMON Tree. Which
26          is not a true AST any longer.
27}]
28
29[section API]
30
31[list_begin definitions]
32[call [cmd ::page::util::norm::lemon] [arg tree]]
33
34This command assumes the [arg tree] object contains for a lemon
35grammar. It normalizes this tree in place. The result is called a
36[term {Normalized Lemon Grammar Tree}].
37
38[para]
39
40The exact operations performed are left undocumented for the moment.
41
42[list_end]
43
44[section {BUGS, IDEAS, FEEDBACK}]
45
46This document, will undoubtedly contain bugs and other problems.
47
48Please report such in the category [emph page] of the
49[uri {http://sourceforge.net/tracker/?group_id=12883} {Tcllib SF Trackers}].
50
51Please also report any ideas for enhancements you may have.
52
53[manpage_end]
54