home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Geek Gadgets 1
/
ADE-1.bin
/
ade-dist
/
emacs-19.28-src.tgz
/
tar.out
/
fsf
/
emacs
/
src
/
setlisp.cpr
< prev
next >
Wrap
Text File
|
1996-09-28
|
683b
|
16 lines
/* */
"define VALBITS 26"
"define INTBITS 32"
"define XPNTR(a) ((a & 0x3ffffff) | 0x08000000)"
"define XINT(a) (((a) << (INTBITS-VALBITS)) >> (INTBITS-VALBITS))"
"define XCONS(a) ((struct Lisp_Cons*) XPNTR(a))"
"define XSYMBOL(a) ((struct Lisp_Symbol*) XPNTR(a))"
"define XSUBR(a) ((struct Lisp_Subr*) XPNTR(a))"
"define XMARKER(a) ((struct Lisp_Marker*) XPNTR(a))"
"define XWINDOW(a) ((struct window *) XPNTR(a))"
"define XVECTOR(a) ((struct Lisp_Vector *) XPNTR(a))"
"define XTYPE(a) ((enum Lisp_Type) ((a) >> VALBITS))"
"define CONSP(x) (XTYPE ((x)) == 5)"
"define EQ(x, y) ((x) == (y))"
"alias dsymbol { d *XSYMBOL($1) ; du XSYMBOL($1)->name->data l XSYMBOL($1)->name->size a }"