Subversion Repositories tendra.SVN

Rev

Rev 2 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2 Rev 7
Line 35... Line 35...
35
#ifndef NAT_OPS_H_INCLUDED
35
#ifndef NAT_OPS_H_INCLUDED
36
#define NAT_OPS_H_INCLUDED
36
#define NAT_OPS_H_INCLUDED
37
 
37
 
38
/* Operations for union NAT */
38
/* Operations for union NAT */
39
 
39
 
40
#pragma token PROC ( EXP : NAT : ) EXP : unsigned : TAG_nat #
40
#pragma token PROC(EXP : NAT :) EXP : unsigned : TAG_nat #
41
#pragma interface TAG_nat
41
#pragma interface TAG_nat
42
 
42
 
43
 
43
 
44
/* Operations for field small of union NAT */
44
/* Operations for field small of union NAT */
45
 
45
 
46
#pragma token EXP const : unsigned : nat_small_tag #
46
#pragma token EXP const : unsigned : nat_small_tag #
47
#pragma token PROC ( EXP : NAT : ) EXP : int : IS_nat_small #
47
#pragma token PROC(EXP : NAT :) EXP : int : IS_nat_small #
48
#pragma interface nat_small_tag IS_nat_small
48
#pragma interface nat_small_tag IS_nat_small
49
 
49
 
50
#pragma token PROC ( EXP : NAT : )\
50
#pragma token PROC(EXP : NAT :)\
51
    EXP : PTR ( unsigned ) : nat_small_value #
51
    EXP : PTR(unsigned) : nat_small_value #
52
#pragma interface nat_small_value
52
#pragma interface nat_small_value
53
 
53
 
54
#pragma token PROC (\
54
#pragma token PROC(\
55
	EXP : unsigned :,\
55
	EXP : unsigned :,\
56
	EXP lvalue : NAT :\
56
	EXP lvalue : NAT :\
57
    ) STATEMENT MAKE_nat_small #
57
    ) STATEMENT MAKE_nat_small #
58
#pragma interface MAKE_nat_small
58
#pragma interface MAKE_nat_small
59
 
59
 
60
#pragma token PROC (\
60
#pragma token PROC(\
61
	EXP lvalue : unsigned :,\
61
	EXP lvalue : unsigned :,\
62
	EXP : NAT :\
62
	EXP : NAT :\
63
    ) STATEMENT DECONS_nat_small #
63
    ) STATEMENT DECONS_nat_small #
64
#pragma interface DECONS_nat_small
64
#pragma interface DECONS_nat_small
65
 
65
 
66
#pragma token PROC (\
66
#pragma token PROC(\
67
	EXP : DESTROYER :,\
67
	EXP : DESTROYER :,\
68
	EXP lvalue : unsigned :,\
68
	EXP lvalue : unsigned :,\
69
	EXP : NAT :\
69
	EXP : NAT :\
70
    ) STATEMENT DESTROY_nat_small #
70
    ) STATEMENT DESTROY_nat_small #
71
#pragma interface DESTROY_nat_small
71
#pragma interface DESTROY_nat_small
72
 
72
 
73
 
73
 
74
/* Operations for field large of union NAT */
74
/* Operations for field large of union NAT */
75
 
75
 
76
#pragma token EXP const : unsigned : nat_large_tag #
76
#pragma token EXP const : unsigned : nat_large_tag #
77
#pragma token PROC ( EXP : NAT : ) EXP : int : IS_nat_large #
77
#pragma token PROC(EXP : NAT :) EXP : int : IS_nat_large #
78
#pragma interface nat_large_tag IS_nat_large
78
#pragma interface nat_large_tag IS_nat_large
79
 
79
 
80
#pragma token PROC ( EXP : NAT : )\
80
#pragma token PROC(EXP : NAT :)\
81
    EXP : PTR ( LIST ( unsigned ) ) : nat_large_values #
81
    EXP : PTR(LIST(unsigned)) : nat_large_values #
82
#pragma interface nat_large_values
82
#pragma interface nat_large_values
83
 
83
 
84
#pragma token PROC (\
84
#pragma token PROC(\
85
	EXP : LIST ( unsigned ) :,\
85
	EXP : LIST(unsigned) :,\
86
	EXP lvalue : NAT :\
86
	EXP lvalue : NAT :\
87
    ) STATEMENT MAKE_nat_large #
87
    ) STATEMENT MAKE_nat_large #
88
#pragma interface MAKE_nat_large
88
#pragma interface MAKE_nat_large
89
 
89
 
90
#pragma token PROC (\
90
#pragma token PROC(\
91
	EXP lvalue : LIST ( unsigned ) :,\
91
	EXP lvalue : LIST(unsigned) :,\
92
	EXP : NAT :\
92
	EXP : NAT :\
93
    ) STATEMENT DECONS_nat_large #
93
    ) STATEMENT DECONS_nat_large #
94
#pragma interface DECONS_nat_large
94
#pragma interface DECONS_nat_large
95
 
95
 
96
#pragma token PROC (\
96
#pragma token PROC(\
97
	EXP : DESTROYER :,\
97
	EXP : DESTROYER :,\
98
	EXP lvalue : LIST ( unsigned ) :,\
98
	EXP lvalue : LIST(unsigned) :,\
99
	EXP : NAT :\
99
	EXP : NAT :\
100
    ) STATEMENT DESTROY_nat_large #
100
    ) STATEMENT DESTROY_nat_large #
101
#pragma interface DESTROY_nat_large
101
#pragma interface DESTROY_nat_large
102
 
102
 
103
 
103
 
104
/* Operations for field calc of union NAT */
104
/* Operations for field calc of union NAT */
105
 
105
 
106
#pragma token EXP const : unsigned : nat_calc_tag #
106
#pragma token EXP const : unsigned : nat_calc_tag #
107
#pragma token PROC ( EXP : NAT : ) EXP : int : IS_nat_calc #
107
#pragma token PROC(EXP : NAT :) EXP : int : IS_nat_calc #
108
#pragma interface nat_calc_tag IS_nat_calc
108
#pragma interface nat_calc_tag IS_nat_calc
109
 
109
 
110
#pragma token PROC ( EXP : NAT : )\
110
#pragma token PROC(EXP : NAT :)\
111
    EXP : PTR ( EXP ) : nat_calc_value #
111
    EXP : PTR(EXP) : nat_calc_value #
112
#pragma interface nat_calc_value
112
#pragma interface nat_calc_value
113
 
113
 
114
#pragma token PROC ( EXP : NAT : )\
114
#pragma token PROC(EXP : NAT :)\
115
    EXP : PTR ( ulong_type ) : nat_calc_tok #
115
    EXP : PTR(ulong_type) : nat_calc_tok #
116
#pragma interface nat_calc_tok
116
#pragma interface nat_calc_tok
117
 
117
 
118
#pragma token PROC (\
118
#pragma token PROC(\
119
	EXP : EXP :,\
119
	EXP : EXP :,\
120
	EXP lvalue : NAT :\
120
	EXP lvalue : NAT :\
121
    ) STATEMENT MAKE_nat_calc #
121
    ) STATEMENT MAKE_nat_calc #
122
#pragma interface MAKE_nat_calc
122
#pragma interface MAKE_nat_calc
123
 
123
 
124
#pragma token PROC (\
124
#pragma token PROC(\
125
	EXP lvalue : EXP :,\
125
	EXP lvalue : EXP :,\
126
	EXP lvalue : ulong_type :,\
126
	EXP lvalue : ulong_type :,\
127
	EXP : NAT :\
127
	EXP : NAT :\
128
    ) STATEMENT DECONS_nat_calc #
128
    ) STATEMENT DECONS_nat_calc #
129
#pragma interface DECONS_nat_calc
129
#pragma interface DECONS_nat_calc
130
 
130
 
131
#pragma token PROC (\
131
#pragma token PROC(\
132
	EXP : DESTROYER :,\
132
	EXP : DESTROYER :,\
133
	EXP lvalue : EXP :,\
133
	EXP lvalue : EXP :,\
134
	EXP lvalue : ulong_type :,\
134
	EXP lvalue : ulong_type :,\
135
	EXP : NAT :\
135
	EXP : NAT :\
136
    ) STATEMENT DESTROY_nat_calc #
136
    ) STATEMENT DESTROY_nat_calc #
Line 138... Line 138...
138
 
138
 
139
 
139
 
140
/* Operations for field neg of union NAT */
140
/* Operations for field neg of union NAT */
141
 
141
 
142
#pragma token EXP const : unsigned : nat_neg_tag #
142
#pragma token EXP const : unsigned : nat_neg_tag #
143
#pragma token PROC ( EXP : NAT : ) EXP : int : IS_nat_neg #
143
#pragma token PROC(EXP : NAT :) EXP : int : IS_nat_neg #
144
#pragma interface nat_neg_tag IS_nat_neg
144
#pragma interface nat_neg_tag IS_nat_neg
145
 
145
 
146
#pragma token PROC ( EXP : NAT : )\
146
#pragma token PROC(EXP : NAT :)\
147
    EXP : PTR ( NAT ) : nat_neg_arg #
147
    EXP : PTR(NAT) : nat_neg_arg #
148
#pragma interface nat_neg_arg
148
#pragma interface nat_neg_arg
149
 
149
 
150
#pragma token PROC (\
150
#pragma token PROC(\
151
	EXP : NAT :,\
151
	EXP : NAT :,\
152
	EXP lvalue : NAT :\
152
	EXP lvalue : NAT :\
153
    ) STATEMENT MAKE_nat_neg #
153
    ) STATEMENT MAKE_nat_neg #
154
#pragma interface MAKE_nat_neg
154
#pragma interface MAKE_nat_neg
155
 
155
 
156
#pragma token PROC (\
156
#pragma token PROC(\
157
	EXP lvalue : NAT :,\
157
	EXP lvalue : NAT :,\
158
	EXP : NAT :\
158
	EXP : NAT :\
159
    ) STATEMENT DECONS_nat_neg #
159
    ) STATEMENT DECONS_nat_neg #
160
#pragma interface DECONS_nat_neg
160
#pragma interface DECONS_nat_neg
161
 
161
 
162
#pragma token PROC (\
162
#pragma token PROC(\
163
	EXP : DESTROYER :,\
163
	EXP : DESTROYER :,\
164
	EXP lvalue : NAT :,\
164
	EXP lvalue : NAT :,\
165
	EXP : NAT :\
165
	EXP : NAT :\
166
    ) STATEMENT DESTROY_nat_neg #
166
    ) STATEMENT DESTROY_nat_neg #
167
#pragma interface DESTROY_nat_neg
167
#pragma interface DESTROY_nat_neg
168
 
168
 
169
 
169
 
170
/* Operations for field token of union NAT */
170
/* Operations for field token of union NAT */
171
 
171
 
172
#pragma token EXP const : unsigned : nat_token_tag #
172
#pragma token EXP const : unsigned : nat_token_tag #
173
#pragma token PROC ( EXP : NAT : ) EXP : int : IS_nat_token #
173
#pragma token PROC(EXP : NAT :) EXP : int : IS_nat_token #
174
#pragma interface nat_token_tag IS_nat_token
174
#pragma interface nat_token_tag IS_nat_token
175
 
175
 
176
#pragma token PROC ( EXP : NAT : )\
176
#pragma token PROC(EXP : NAT :)\
177
    EXP : PTR ( IDENTIFIER ) : nat_token_tok #
177
    EXP : PTR(IDENTIFIER) : nat_token_tok #
178
#pragma interface nat_token_tok
178
#pragma interface nat_token_tok
179
 
179
 
180
#pragma token PROC ( EXP : NAT : )\
180
#pragma token PROC(EXP : NAT :)\
181
    EXP : PTR ( LIST ( TOKEN ) ) : nat_token_args #
181
    EXP : PTR(LIST(TOKEN)) : nat_token_args #
182
#pragma interface nat_token_args
182
#pragma interface nat_token_args
183
 
183
 
184
#pragma token PROC (\
184
#pragma token PROC(\
185
	EXP : IDENTIFIER :,\
185
	EXP : IDENTIFIER :,\
186
	EXP : LIST ( TOKEN ) :,\
186
	EXP : LIST(TOKEN) :,\
187
	EXP lvalue : NAT :\
187
	EXP lvalue : NAT :\
188
    ) STATEMENT MAKE_nat_token #
188
    ) STATEMENT MAKE_nat_token #
189
#pragma interface MAKE_nat_token
189
#pragma interface MAKE_nat_token
190
 
190
 
191
#pragma token PROC (\
191
#pragma token PROC(\
192
	EXP lvalue : IDENTIFIER :,\
192
	EXP lvalue : IDENTIFIER :,\
193
	EXP lvalue : LIST ( TOKEN ) :,\
193
	EXP lvalue : LIST(TOKEN) :,\
194
	EXP : NAT :\
194
	EXP : NAT :\
195
    ) STATEMENT DECONS_nat_token #
195
    ) STATEMENT DECONS_nat_token #
196
#pragma interface DECONS_nat_token
196
#pragma interface DECONS_nat_token
197
 
197
 
198
#pragma token PROC (\
198
#pragma token PROC(\
199
	EXP : DESTROYER :,\
199
	EXP : DESTROYER :,\
200
	EXP lvalue : IDENTIFIER :,\
200
	EXP lvalue : IDENTIFIER :,\
201
	EXP lvalue : LIST ( TOKEN ) :,\
201
	EXP lvalue : LIST(TOKEN) :,\
202
	EXP : NAT :\
202
	EXP : NAT :\
203
    ) STATEMENT DESTROY_nat_token #
203
    ) STATEMENT DESTROY_nat_token #
204
#pragma interface DESTROY_nat_token
204
#pragma interface DESTROY_nat_token
205
 
205
 
206
 
206