C:/Users/Dennis/src/lang/russell.orig/src/datatypes/stack.h File Reference

Go to the source code of this file.

Defines

#define push(x, S)   (S) = cn_cons((x),(S))
#define pop(S)   (S) = cn_del_hd((S))
#define top(S)   cn_head((S))
#define is_stempty(S)   cn_null((S))
#define emptystack()   NIL
#define mark(S)   (S)
#define is_top_marked(S, mark)   ((S) == (mark))
#define st_foreach(var, stack)
#define end_foreach

Typedefs

typedef ConsNodeSTACK
typedef ConsNodeMARK


Define Documentation

 
#define emptystack (  )     NIL

Definition at line 18 of file stack.h.

#define end_foreach

Value:

}             \
    }

Definition at line 33 of file stack.h.

#define is_stempty (  )     cn_null((S))

Definition at line 16 of file stack.h.

#define is_top_marked ( S,
mark   )     ((S) == (mark))

Definition at line 22 of file stack.h.

#define mark (  )     (S)

Definition at line 20 of file stack.h.

#define pop (  )     (S) = cn_del_hd((S))

Definition at line 12 of file stack.h.

#define push ( x,
 )     (S) = cn_cons((x),(S))

Definition at line 10 of file stack.h.

#define st_foreach ( var,
stack   ) 

Value:

{   STACK st__0O_tmp; /* how's that for an obscure variable name ? */\
        for ( st__0O_tmp = (stack);  \
              ((var) = top(st__0O_tmp), !is_stempty(st__0O_tmp)); \
              st__0O_tmp = cn_tail(st__0O_tmp) ) {

Definition at line 27 of file stack.h.

#define top (  )     cn_head((S))

Definition at line 14 of file stack.h.


Typedef Documentation

typedef ConsNode* MARK

Definition at line 8 of file stack.h.

typedef ConsNode* STACK

Definition at line 6 of file stack.h.


Generated on Fri Jan 25 10:39:48 2008 for russell by  doxygen 1.5.4