Subversion Repositories tendra.SVN

Rev

Rev 6 | 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 GRAPH_OPS_H_INCLUDED
36
#define GRAPH_OPS_H_INCLUDED
37
 
38
/* Operations for union GRAPH */
39
 
6 7u83 40
#define TAG_graph(P)			((unsigned) 0)
2 7u83 41
 
42
 
43
/* Operations for component head of union GRAPH */
44
 
6 7u83 45
#define graph_head(P)			(CHECK_NULL(P) + 0)
2 7u83 46
 
47
 
48
/* Operations for component access of union GRAPH */
49
 
6 7u83 50
#define graph_access(P)			(CHECK_NULL(P) + 1)
2 7u83 51
 
52
 
53
/* Operations for component tails of union GRAPH */
54
 
6 7u83 55
#define graph_tails(P)			(CHECK_NULL(P) + 2)
2 7u83 56
 
57
 
58
/* Operations for component top of union GRAPH */
59
 
6 7u83 60
#define graph_top(P)			(CHECK_NULL(P) + 3)
2 7u83 61
 
62
 
63
/* Operations for component equal of union GRAPH */
64
 
6 7u83 65
#define graph_equal(P)			(CHECK_NULL(P) + 4)
2 7u83 66
 
67
 
68
/* Operations for component up of union GRAPH */
69
 
6 7u83 70
#define graph_up(P)			(CHECK_NULL(P) + 5)
2 7u83 71
 
72
 
73
/* Operations for component no of union GRAPH */
74
 
6 7u83 75
#define graph_no(P)			(CHECK_NULL(P) + 6)
2 7u83 76
 
77
 
78
/* Operations for component off of union GRAPH */
79
 
6 7u83 80
#define graph_off(P)			(CHECK_NULL(P) + 7)
2 7u83 81
 
82
 
83
/* Operations for component member of union GRAPH */
84
 
6 7u83 85
#define graph_member(P)			(CHECK_NULL(P) + 8)
2 7u83 86
 
87
 
88
/* Operations for component tok1 of union GRAPH */
89
 
6 7u83 90
#define graph_tok1(P)			(CHECK_NULL(P) + 9)
2 7u83 91
 
92
 
93
/* Operations for component tok2 of union GRAPH */
94
 
6 7u83 95
#define graph_tok2(P)			(CHECK_NULL(P) + 10)
2 7u83 96
 
97
 
98
/* Operations for field basic of union GRAPH */
99
 
6 7u83 100
#define graph_basic_tag			((unsigned)0)
101
#define IS_graph_basic(P)		1
2 7u83 102
 
103
 
6 7u83 104
#define MAKE_graph_basic(head_, access_, c_class_graph)\
2 7u83 105
    {\
6 7u83 106
	c_class *x202_ = GEN_c_class(11, TYPEID_graph);\
107
	COPY_ctype(x202_ + 0, (head_));\
108
	COPY_dspec(x202_ + 1, (access_));\
109
	COPY_list(x202_ + 2, NULL_list ( GRAPH ));\
110
	COPY_graph(x202_ + 3, NULL_graph);\
111
	COPY_graph(x202_ + 4, NULL_graph);\
112
	COPY_graph(x202_ + 5, NULL_graph);\
113
	COPY_unsigned(x202_ + 6, 0);\
114
	COPY_off(x202_ + 7, NULL_off);\
115
	COPY_list(x202_ + 8, NULL_list ( IDENTIFIER ));\
116
	COPY_ulong(x202_ + 9, LINK_NONE);\
117
	COPY_ulong(x202_ + 10, LINK_NONE);\
118
	(c_class_graph) = x202_;\
2 7u83 119
    }
120
 
6 7u83 121
#define DECONS_graph_basic(head_, access_, tails_, top_, equal_, up_, no_, off_, member_, tok1_, tok2_, c_class_graph)\
2 7u83 122
    {\
6 7u83 123
	c_class *x203_ = (c_class_graph);\
124
	(head_) = DEREF_ctype(x203_ + 0);\
125
	(access_) = DEREF_dspec(x203_ + 1);\
126
	(tails_) = DEREF_list(x203_ + 2);\
127
	(top_) = DEREF_graph(x203_ + 3);\
128
	(equal_) = DEREF_graph(x203_ + 4);\
129
	(up_) = DEREF_graph(x203_ + 5);\
130
	(no_) = DEREF_unsigned(x203_ + 6);\
131
	(off_) = DEREF_off(x203_ + 7);\
132
	(member_) = DEREF_list(x203_ + 8);\
133
	(tok1_) = DEREF_ulong(x203_ + 9);\
134
	(tok2_) = DEREF_ulong(x203_ + 10);\
2 7u83 135
    }
136
 
6 7u83 137
#define DESTROY_graph_basic(destroyer_, head_, access_, tails_, top_, equal_, up_, no_, off_, member_, tok1_, tok2_, c_class_graph)\
2 7u83 138
    {\
6 7u83 139
	c_class *x204_ = (c_class_graph);\
140
	(head_) = DEREF_ctype(x204_ + 0);\
141
	(access_) = DEREF_dspec(x204_ + 1);\
142
	(tails_) = DEREF_list(x204_ + 2);\
143
	(top_) = DEREF_graph(x204_ + 3);\
144
	(equal_) = DEREF_graph(x204_ + 4);\
145
	(up_) = DEREF_graph(x204_ + 5);\
146
	(no_) = DEREF_unsigned(x204_ + 6);\
147
	(off_) = DEREF_off(x204_ + 7);\
148
	(member_) = DEREF_list(x204_ + 8);\
149
	(tok1_) = DEREF_ulong(x204_ + 9);\
150
	(tok2_) = DEREF_ulong(x204_ + 10);\
151
	(destroyer_)(x204_, (unsigned)11);\
2 7u83 152
    }
153
 
154
 
155
#endif