Subversion Repositories tendra.SVN

Rev

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

Rev 5 Rev 6
Line 35... Line 35...
35
#ifndef SORT_OPS_H_INCLUDED
35
#ifndef SORT_OPS_H_INCLUDED
36
#define SORT_OPS_H_INCLUDED
36
#define SORT_OPS_H_INCLUDED
37
 
37
 
38
/* Operations for union SORT */
38
/* Operations for union SORT */
39
 
39
 
40
#define TAG_sort( P )			( ( unsigned ) 0 )
40
#define TAG_sort(P)			((unsigned) 0)
41
 
41
 
42
 
42
 
43
/* Operations for component name of union SORT */
43
/* Operations for component name of union SORT */
44
 
44
 
45
#define sort_name( P )			( CHECK_NULL ( P ) + 0 )
45
#define sort_name(P)			(CHECK_NULL(P) + 0)
46
 
46
 
47
 
47
 
48
/* Operations for component caps of union SORT */
48
/* Operations for component caps of union SORT */
49
 
49
 
50
#define sort_caps( P )			( CHECK_NULL ( P ) + 1 )
50
#define sort_caps(P)			(CHECK_NULL(P) + 1)
51
 
51
 
52
 
52
 
53
/* Operations for component link of union SORT */
53
/* Operations for component link of union SORT */
54
 
54
 
55
#define sort_link( P )			( CHECK_NULL ( P ) + 2 )
55
#define sort_link(P)			(CHECK_NULL(P) + 2)
56
 
56
 
57
 
57
 
58
/* Operations for component unit of union SORT */
58
/* Operations for component unit of union SORT */
59
 
59
 
60
#define sort_unit( P )			( CHECK_NULL ( P ) + 3 )
60
#define sort_unit(P)			(CHECK_NULL(P) + 3)
61
 
61
 
62
 
62
 
63
/* Operations for component code of union SORT */
63
/* Operations for component code of union SORT */
64
 
64
 
65
#define sort_code( P )			( CHECK_NULL ( P ) + 4 )
65
#define sort_code(P)			(CHECK_NULL(P) + 4)
66
 
66
 
67
 
67
 
68
/* Operations for component mark of union SORT */
68
/* Operations for component mark of union SORT */
69
 
69
 
70
#define sort_mark( P )			( CHECK_NULL ( P ) + 5 )
70
#define sort_mark(P)			(CHECK_NULL(P) + 5)
71
 
71
 
72
 
72
 
73
/* Operations for component special of union SORT */
73
/* Operations for component special of union SORT */
74
 
74
 
75
#define sort_special( P )		( CHECK_NULL ( P ) + 6 )
75
#define sort_special(P)			(CHECK_NULL(P) + 6)
76
 
76
 
77
 
77
 
78
/* Operations for component edge of union SORT */
78
/* Operations for component edge of union SORT */
79
 
79
 
80
#define sort_edge( P )			( CHECK_NULL ( P ) + 7 )
80
#define sort_edge(P)			(CHECK_NULL(P) + 7)
81
 
81
 
82
 
82
 
83
/* Operations for component info of union SORT */
83
/* Operations for component info of union SORT */
84
 
84
 
85
#define sort_info( P )			( CHECK_NULL ( P ) + 8 )
85
#define sort_info(P)			(CHECK_NULL(P) + 8)
86
 
86
 
87
 
87
 
88
/* Operations for field basic of union SORT */
88
/* Operations for field basic of union SORT */
89
 
89
 
90
#define sort_basic_tag			( ( unsigned ) 0 )
90
#define sort_basic_tag			((unsigned)0)
91
#define IS_sort_basic( P )		1
91
#define IS_sort_basic(P)		1
92
 
92
 
93
 
93
 
94
#define MAKE_sort_basic( name_, caps_, link_, unit_, code_, mark_, special_, edge_, info_, tdf_sort )\
94
#define MAKE_sort_basic(name_, caps_, link_, unit_, code_, mark_, special_, edge_, info_, tdf_sort)\
95
    {\
95
    {\
96
	tdf *x93_ = GEN_tdf ( 9, TYPEID_sort ) ;\
96
	tdf *x93_ = GEN_tdf(9, TYPEID_sort);\
97
	COPY_string ( x93_ + 0, ( name_ ) ) ;\
97
	COPY_string(x93_ + 0, (name_));\
98
	COPY_string ( x93_ + 1, ( caps_ ) ) ;\
98
	COPY_string(x93_ + 1, (caps_));\
99
	COPY_string ( x93_ + 2, ( link_ ) ) ;\
99
	COPY_string(x93_ + 2, (link_));\
100
	COPY_string ( x93_ + 3, ( unit_ ) ) ;\
100
	COPY_string(x93_ + 3, (unit_));\
101
	COPY_int ( x93_ + 4, ( code_ ) ) ;\
101
	COPY_int(x93_ + 4, (code_));\
102
	COPY_int ( x93_ + 5, ( mark_ ) ) ;\
102
	COPY_int(x93_ + 5, (mark_));\
103
	COPY_int ( x93_ + 6, ( special_ ) ) ;\
103
	COPY_int(x93_ + 6, (special_));\
104
	COPY_int ( x93_ + 7, ( edge_ ) ) ;\
104
	COPY_int(x93_ + 7, (edge_));\
105
	COPY_info ( x93_ + 8, ( info_ ) ) ;\
105
	COPY_info(x93_ + 8, (info_));\
106
	( tdf_sort ) = x93_ ;\
106
	(tdf_sort) = x93_;\
107
    }
107
    }
108
 
108
 
109
#define DECONS_sort_basic( name_, caps_, link_, unit_, code_, mark_, special_, edge_, info_, tdf_sort )\
109
#define DECONS_sort_basic(name_, caps_, link_, unit_, code_, mark_, special_, edge_, info_, tdf_sort)\
110
    {\
110
    {\
111
	tdf *x94_ = ( tdf_sort ) ;\
111
	tdf *x94_ = (tdf_sort);\
112
	( name_ ) = DEREF_string ( x94_ + 0 ) ;\
112
	(name_) = DEREF_string(x94_ + 0);\
113
	( caps_ ) = DEREF_string ( x94_ + 1 ) ;\
113
	(caps_) = DEREF_string(x94_ + 1);\
114
	( link_ ) = DEREF_string ( x94_ + 2 ) ;\
114
	(link_) = DEREF_string(x94_ + 2);\
115
	( unit_ ) = DEREF_string ( x94_ + 3 ) ;\
115
	(unit_) = DEREF_string(x94_ + 3);\
116
	( code_ ) = DEREF_int ( x94_ + 4 ) ;\
116
	(code_) = DEREF_int(x94_ + 4);\
117
	( mark_ ) = DEREF_int ( x94_ + 5 ) ;\
117
	(mark_) = DEREF_int(x94_ + 5);\
118
	( special_ ) = DEREF_int ( x94_ + 6 ) ;\
118
	(special_) = DEREF_int(x94_ + 6);\
119
	( edge_ ) = DEREF_int ( x94_ + 7 ) ;\
119
	(edge_) = DEREF_int(x94_ + 7);\
120
	( info_ ) = DEREF_info ( x94_ + 8 ) ;\
120
	(info_) = DEREF_info(x94_ + 8);\
121
    }
121
    }
122
 
122
 
123
#define DESTROY_sort_basic( destroyer_, name_, caps_, link_, unit_, code_, mark_, special_, edge_, info_, tdf_sort )\
123
#define DESTROY_sort_basic(destroyer_, name_, caps_, link_, unit_, code_, mark_, special_, edge_, info_, tdf_sort)\
124
    {\
124
    {\
125
	tdf *x95_ = ( tdf_sort ) ;\
125
	tdf *x95_ = (tdf_sort);\
126
	( name_ ) = DEREF_string ( x95_ + 0 ) ;\
126
	(name_) = DEREF_string(x95_ + 0);\
127
	( caps_ ) = DEREF_string ( x95_ + 1 ) ;\
127
	(caps_) = DEREF_string(x95_ + 1);\
128
	( link_ ) = DEREF_string ( x95_ + 2 ) ;\
128
	(link_) = DEREF_string(x95_ + 2);\
129
	( unit_ ) = DEREF_string ( x95_ + 3 ) ;\
129
	(unit_) = DEREF_string(x95_ + 3);\
130
	( code_ ) = DEREF_int ( x95_ + 4 ) ;\
130
	(code_) = DEREF_int(x95_ + 4);\
131
	( mark_ ) = DEREF_int ( x95_ + 5 ) ;\
131
	(mark_) = DEREF_int(x95_ + 5);\
132
	( special_ ) = DEREF_int ( x95_ + 6 ) ;\
132
	(special_) = DEREF_int(x95_ + 6);\
133
	( edge_ ) = DEREF_int ( x95_ + 7 ) ;\
133
	(edge_) = DEREF_int(x95_ + 7);\
134
	( info_ ) = DEREF_info ( x95_ + 8 ) ;\
134
	(info_) = DEREF_info(x95_ + 8);\
135
	( destroyer_ ) ( x95_, ( unsigned ) 9 ) ;\
135
	(destroyer_)(x95_, (unsigned)9);\
136
    }
136
    }
137
 
137
 
138
 
138
 
139
#endif
139
#endif