1## -*- tcl -*-
2##
3## NX-based Tcl/PARAM implementation of the parsing
4## expression grammar
5##
6##	TEMPLATE
7##
8## Generated from file	TEST
9##            for user  unknown
10##
11# # ## ### ##### ######## ############# #####################
12## Requirements
13
14package require Tcl 8.5
15package require nx
16package require pt::rde::nx ; # NX-based implementation of the
17			      # PARAM virtual machine
18			      # underlying the Tcl/PARAM code
19			      # used below.
20
21# # ## ### ##### ######## ############# #####################
22##
23
24nx::Class create PARSER -superclasses pt::rde::nx {
25    # # ## ### ##### ######## #############
26    ## Public API
27
28    :public method parse {channel} {
29	:reset $channel
30	:MAIN ; # Entrypoint for the generated code.
31	return [:complete]
32    }
33
34    :public method parset {text} {
35	:reset {}
36	:data $text
37	:MAIN ; # Entrypoint for the generated code.
38	return [:complete]
39    }
40
41    # # ## ### ###### ######## #############
42    ## BEGIN of GENERATED CODE. DO NOT EDIT.
43
44    #
45    # Grammar Start Expression
46    #
47
48    :method MAIN {} {
49        : sym_Expression
50        return
51    }
52
53    #
54    # value Symbol 'Expression'
55    #
56
57    :method sym_Expression {} {
58        # (Function)
59
60        : si:value_symbol_start Expression
61        : sym_Function
62        : si:reduce_symbol_end Expression
63        return
64    }
65
66    #
67    # value Symbol 'Function'
68    #
69
70    :method sym_Function {} {
71        # (Sinus)
72
73        : si:value_symbol_start Function
74        : sym_Sinus
75        : si:reduce_symbol_end Function
76        return
77    }
78
79    #
80    # value Symbol 'Sinus'
81    #
82
83    :method sym_Sinus {} {
84        # x
85        #     "sin\("
86        #     (Expression)
87        #     '\)'
88
89        : si:value_symbol_start Sinus
90        : sequence_9
91        : si:reduce_symbol_end Sinus
92        return
93    }
94
95    :method sequence_9 {} {
96        # x
97        #     "sin\("
98        #     (Expression)
99        #     '\)'
100
101        : si:void_state_push
102        : si:next_str sin\50
103        : si:voidvalue_part
104        : sym_Expression
105        : si:valuevalue_part
106        : si:next_char \51
107        : si:value_state_merge
108        return
109    }
110
111    ## END of GENERATED CODE. DO NOT EDIT.
112    # # ## ### ###### ######## #############
113}
114
115# # ## ### ##### ######## ############# #####################
116## Ready
117
118package provide NX_PACKAGE 1
119return
120