1
|
1 typedef struct Stack<Impl>{
|
|
2 union Data* stack;
|
|
3 union Data* data;
|
|
4 union Data* data1;
|
|
5 __code whenEmpty(...);
|
|
6 __code clear(Impl* stack,__code next(...));
|
|
7 __code push(Impl* stack,union Data* data, __code next(...));
|
|
8 __code pop(Impl* stack, __code next(union Data*, ...));
|
|
9 __code pop2(Impl* stack, union Data** data, union Data** data1, __code next(union Data**, union Data**, ...));
|
|
10 __code isEmpty(Impl* stack, __code next(...), __code whenEmpty(...));
|
|
11 __code get(Impl* stack, union Data** data, __code next(...));
|
|
12 __code get2(Impl* stack,..., __code next(...));
|
|
13 __code next(...);
|
|
14 } Stack;
|