Mercurial > hg > xemacs-beta
comparison src/fns.c @ 5516:fa5fc2e3d9a6
New function OBJECT-ADDRESS.
-------------------- ChangeLog entries follow: --------------------
src/ChangeLog addition:
2011-06-01 Didier Verna <didier@xemacs.org>
* fns.c (Fobject_address): New function.
* fns.c (syms_of_fns): DEFSUBR it.
author | Didier Verna <didier@xemacs.org> |
---|---|
date | Wed, 01 Jun 2011 10:53:50 +0200 |
parents | 6b3caa55668c |
children | 5e128eda1d1f |
comparison
equal
deleted
inserted
replaced
5515:f87be7ddd60d | 5516:fa5fc2e3d9a6 |
---|---|
6208 newplist); | 6208 newplist); |
6209 } | 6209 } |
6210 | 6210 |
6211 invalid_operation ("Not possible to set object's plist", object); | 6211 invalid_operation ("Not possible to set object's plist", object); |
6212 return Qnil; | 6212 return Qnil; |
6213 } | |
6214 | |
6215 | |
6216 DEFUN ("object-address", Fobject_address, 1, 1, 0, /* | |
6217 Return OBJECT's memory address as an integer. | |
6218 This may be useful for customized printing of unreadable Lisp objects. | |
6219 As this only makes sense for record type objects, this function returns nil | |
6220 for chars and integers. | |
6221 */ | |
6222 (object)) | |
6223 { | |
6224 switch (XTYPE (object)) | |
6225 { | |
6226 case Lisp_Type_Int_Even: | |
6227 case Lisp_Type_Int_Odd: | |
6228 case Lisp_Type_Char: | |
6229 { | |
6230 return Qnil; | |
6231 } | |
6232 case Lisp_Type_Record: | |
6233 { | |
6234 return make_integer ((EMACS_INT) GET_VOID_FROM_LISP (object)); | |
6235 } | |
6236 default: | |
6237 { | |
6238 signal_error (Qinternal_error, | |
6239 "Internal error: illegal lisp object tag type", | |
6240 object); | |
6241 } | |
6242 } | |
6213 } | 6243 } |
6214 | 6244 |
6215 | 6245 |
6216 | 6246 |
6217 static Lisp_Object | 6247 static Lisp_Object |
11784 DEFSUBR (Fget); | 11814 DEFSUBR (Fget); |
11785 DEFSUBR (Fput); | 11815 DEFSUBR (Fput); |
11786 DEFSUBR (Fremprop); | 11816 DEFSUBR (Fremprop); |
11787 DEFSUBR (Fobject_plist); | 11817 DEFSUBR (Fobject_plist); |
11788 DEFSUBR (Fobject_setplist); | 11818 DEFSUBR (Fobject_setplist); |
11819 DEFSUBR (Fobject_address); | |
11789 DEFSUBR (Fequal); | 11820 DEFSUBR (Fequal); |
11790 DEFSUBR (Fequalp); | 11821 DEFSUBR (Fequalp); |
11791 DEFSUBR (Ffill); | 11822 DEFSUBR (Ffill); |
11792 | 11823 |
11793 #ifdef SUPPORT_CONFOUNDING_FUNCTIONS | 11824 #ifdef SUPPORT_CONFOUNDING_FUNCTIONS |