2004-07-16 02:26:21 -04:00
|
|
|
typedef struct {
|
|
|
|
CELL car;
|
|
|
|
CELL cdr;
|
2004-12-10 21:46:42 -05:00
|
|
|
} F_CONS;
|
2004-07-16 02:26:21 -04:00
|
|
|
|
2004-12-10 21:46:42 -05:00
|
|
|
INLINE F_CONS* untag_cons(CELL tagged)
|
2004-07-16 02:26:21 -04:00
|
|
|
{
|
|
|
|
type_check(CONS_TYPE,tagged);
|
2004-12-10 21:46:42 -05:00
|
|
|
return (F_CONS*)UNTAG(tagged);
|
2004-07-16 02:26:21 -04:00
|
|
|
}
|
|
|
|
|
2004-12-10 21:46:42 -05:00
|
|
|
INLINE CELL tag_cons(F_CONS* cons)
|
2004-07-16 02:26:21 -04:00
|
|
|
{
|
|
|
|
return RETAG(cons,CONS_TYPE);
|
|
|
|
}
|
|
|
|
|
2004-09-03 18:49:04 -04:00
|
|
|
CELL cons(CELL car, CELL cdr);
|
2004-07-16 02:26:21 -04:00
|
|
|
|
|
|
|
void primitive_cons(void);
|