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 >
Text File  |  1996-09-28  |  683b  |  16 lines

  1. /* */
  2. "define VALBITS 26"
  3. "define INTBITS 32"
  4. "define XPNTR(a) ((a & 0x3ffffff) | 0x08000000)"
  5. "define XINT(a) (((a) << (INTBITS-VALBITS)) >> (INTBITS-VALBITS))"
  6. "define XCONS(a) ((struct Lisp_Cons*) XPNTR(a))"
  7. "define XSYMBOL(a) ((struct Lisp_Symbol*) XPNTR(a))"
  8. "define XSUBR(a) ((struct Lisp_Subr*) XPNTR(a))"
  9. "define XMARKER(a) ((struct Lisp_Marker*) XPNTR(a))"
  10. "define XWINDOW(a) ((struct window *) XPNTR(a))"
  11. "define XVECTOR(a) ((struct Lisp_Vector *) XPNTR(a))"
  12. "define XTYPE(a) ((enum Lisp_Type) ((a) >> VALBITS))"
  13. "define CONSP(x) (XTYPE ((x)) == 5)"
  14. "define EQ(x, y) ((x) == (y))"
  15. "alias dsymbol { d *XSYMBOL($1) ; du XSYMBOL($1)->name->data l XSYMBOL($1)->name->size a }"
  16.