Subversion Repositories tendra.SVN

Rev

Rev 2 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 7u83 1
/*
2
    		 Crown Copyright (c) 1997, 1998
3
 
4
    This TenDRA(r) Computer Program is subject to Copyright
5
    owned by the United Kingdom Secretary of State for Defence
6
    acting through the Defence Evaluation and Research Agency
7
    (DERA).  It is made available to Recipients with a
8
    royalty-free licence for its use, reproduction, transfer
9
    to other parties and amendment for any purpose not excluding
10
    product development provided that any such use et cetera
11
    shall be deemed to be acceptance of the following conditions:-
12
 
13
        (1) Its Recipients shall ensure that this Notice is
14
        reproduced upon any copies or amended versions of it;
15
 
16
        (2) Any amended version of it shall be clearly marked to
17
        show both the nature of and the organisation responsible
18
        for the relevant amendment or amendments;
19
 
20
        (3) Its onward transfer from a recipient to another
21
        party shall be deemed to be that party's acceptance of
22
        these conditions;
23
 
24
        (4) DERA gives no warranty or assurance as to its
25
        quality or suitability for any purpose and DERA accepts
26
        no liability whatsoever in relation to any use to which
27
        it may be put.
28
*/
29
 
30
/*
31
    AUTOMATICALLY GENERATED FROM ALGEBRA c_class (VERSION 1.1)
32
    BY calculus (VERSION 1.2)
33
*/
34
 
35
#ifndef NAT_OPS_H_INCLUDED
36
#define NAT_OPS_H_INCLUDED
37
 
38
/* Operations for union NAT */
39
 
7 7u83 40
#pragma token PROC(EXP : NAT :) EXP : unsigned : TAG_nat #
2 7u83 41
#pragma interface TAG_nat
42
 
43
 
44
/* Operations for field small of union NAT */
45
 
46
#pragma token EXP const : unsigned : nat_small_tag #
7 7u83 47
#pragma token PROC(EXP : NAT :) EXP : int : IS_nat_small #
2 7u83 48
#pragma interface nat_small_tag IS_nat_small
49
 
7 7u83 50
#pragma token PROC(EXP : NAT :)\
51
    EXP : PTR(unsigned) : nat_small_value #
2 7u83 52
#pragma interface nat_small_value
53
 
7 7u83 54
#pragma token PROC(\
2 7u83 55
	EXP : unsigned :,\
56
	EXP lvalue : NAT :\
57
    ) STATEMENT MAKE_nat_small #
58
#pragma interface MAKE_nat_small
59
 
7 7u83 60
#pragma token PROC(\
2 7u83 61
	EXP lvalue : unsigned :,\
62
	EXP : NAT :\
63
    ) STATEMENT DECONS_nat_small #
64
#pragma interface DECONS_nat_small
65
 
7 7u83 66
#pragma token PROC(\
2 7u83 67
	EXP : DESTROYER :,\
68
	EXP lvalue : unsigned :,\
69
	EXP : NAT :\
70
    ) STATEMENT DESTROY_nat_small #
71
#pragma interface DESTROY_nat_small
72
 
73
 
74
/* Operations for field large of union NAT */
75
 
76
#pragma token EXP const : unsigned : nat_large_tag #
7 7u83 77
#pragma token PROC(EXP : NAT :) EXP : int : IS_nat_large #
2 7u83 78
#pragma interface nat_large_tag IS_nat_large
79
 
7 7u83 80
#pragma token PROC(EXP : NAT :)\
81
    EXP : PTR(LIST(unsigned)) : nat_large_values #
2 7u83 82
#pragma interface nat_large_values
83
 
7 7u83 84
#pragma token PROC(\
85
	EXP : LIST(unsigned) :,\
2 7u83 86
	EXP lvalue : NAT :\
87
    ) STATEMENT MAKE_nat_large #
88
#pragma interface MAKE_nat_large
89
 
7 7u83 90
#pragma token PROC(\
91
	EXP lvalue : LIST(unsigned) :,\
2 7u83 92
	EXP : NAT :\
93
    ) STATEMENT DECONS_nat_large #
94
#pragma interface DECONS_nat_large
95
 
7 7u83 96
#pragma token PROC(\
2 7u83 97
	EXP : DESTROYER :,\
7 7u83 98
	EXP lvalue : LIST(unsigned) :,\
2 7u83 99
	EXP : NAT :\
100
    ) STATEMENT DESTROY_nat_large #
101
#pragma interface DESTROY_nat_large
102
 
103
 
104
/* Operations for field calc of union NAT */
105
 
106
#pragma token EXP const : unsigned : nat_calc_tag #
7 7u83 107
#pragma token PROC(EXP : NAT :) EXP : int : IS_nat_calc #
2 7u83 108
#pragma interface nat_calc_tag IS_nat_calc
109
 
7 7u83 110
#pragma token PROC(EXP : NAT :)\
111
    EXP : PTR(EXP) : nat_calc_value #
2 7u83 112
#pragma interface nat_calc_value
113
 
7 7u83 114
#pragma token PROC(EXP : NAT :)\
115
    EXP : PTR(ulong_type) : nat_calc_tok #
2 7u83 116
#pragma interface nat_calc_tok
117
 
7 7u83 118
#pragma token PROC(\
2 7u83 119
	EXP : EXP :,\
120
	EXP lvalue : NAT :\
121
    ) STATEMENT MAKE_nat_calc #
122
#pragma interface MAKE_nat_calc
123
 
7 7u83 124
#pragma token PROC(\
2 7u83 125
	EXP lvalue : EXP :,\
126
	EXP lvalue : ulong_type :,\
127
	EXP : NAT :\
128
    ) STATEMENT DECONS_nat_calc #
129
#pragma interface DECONS_nat_calc
130
 
7 7u83 131
#pragma token PROC(\
2 7u83 132
	EXP : DESTROYER :,\
133
	EXP lvalue : EXP :,\
134
	EXP lvalue : ulong_type :,\
135
	EXP : NAT :\
136
    ) STATEMENT DESTROY_nat_calc #
137
#pragma interface DESTROY_nat_calc
138
 
139
 
140
/* Operations for field neg of union NAT */
141
 
142
#pragma token EXP const : unsigned : nat_neg_tag #
7 7u83 143
#pragma token PROC(EXP : NAT :) EXP : int : IS_nat_neg #
2 7u83 144
#pragma interface nat_neg_tag IS_nat_neg
145
 
7 7u83 146
#pragma token PROC(EXP : NAT :)\
147
    EXP : PTR(NAT) : nat_neg_arg #
2 7u83 148
#pragma interface nat_neg_arg
149
 
7 7u83 150
#pragma token PROC(\
2 7u83 151
	EXP : NAT :,\
152
	EXP lvalue : NAT :\
153
    ) STATEMENT MAKE_nat_neg #
154
#pragma interface MAKE_nat_neg
155
 
7 7u83 156
#pragma token PROC(\
2 7u83 157
	EXP lvalue : NAT :,\
158
	EXP : NAT :\
159
    ) STATEMENT DECONS_nat_neg #
160
#pragma interface DECONS_nat_neg
161
 
7 7u83 162
#pragma token PROC(\
2 7u83 163
	EXP : DESTROYER :,\
164
	EXP lvalue : NAT :,\
165
	EXP : NAT :\
166
    ) STATEMENT DESTROY_nat_neg #
167
#pragma interface DESTROY_nat_neg
168
 
169
 
170
/* Operations for field token of union NAT */
171
 
172
#pragma token EXP const : unsigned : nat_token_tag #
7 7u83 173
#pragma token PROC(EXP : NAT :) EXP : int : IS_nat_token #
2 7u83 174
#pragma interface nat_token_tag IS_nat_token
175
 
7 7u83 176
#pragma token PROC(EXP : NAT :)\
177
    EXP : PTR(IDENTIFIER) : nat_token_tok #
2 7u83 178
#pragma interface nat_token_tok
179
 
7 7u83 180
#pragma token PROC(EXP : NAT :)\
181
    EXP : PTR(LIST(TOKEN)) : nat_token_args #
2 7u83 182
#pragma interface nat_token_args
183
 
7 7u83 184
#pragma token PROC(\
2 7u83 185
	EXP : IDENTIFIER :,\
7 7u83 186
	EXP : LIST(TOKEN) :,\
2 7u83 187
	EXP lvalue : NAT :\
188
    ) STATEMENT MAKE_nat_token #
189
#pragma interface MAKE_nat_token
190
 
7 7u83 191
#pragma token PROC(\
2 7u83 192
	EXP lvalue : IDENTIFIER :,\
7 7u83 193
	EXP lvalue : LIST(TOKEN) :,\
2 7u83 194
	EXP : NAT :\
195
    ) STATEMENT DECONS_nat_token #
196
#pragma interface DECONS_nat_token
197
 
7 7u83 198
#pragma token PROC(\
2 7u83 199
	EXP : DESTROYER :,\
200
	EXP lvalue : IDENTIFIER :,\
7 7u83 201
	EXP lvalue : LIST(TOKEN) :,\
2 7u83 202
	EXP : NAT :\
203
    ) STATEMENT DESTROY_nat_token #
204
#pragma interface DESTROY_nat_token
205
 
206
 
207
#endif