Mercurial > hg > xemacs-beta
comparison man/internals/internals.texi @ 3094:ad2f4ae9895b
[xemacs-hg @ 2005-11-26 11:45:47 by stephent]
Xft merge. <87k6ev4p8q.fsf@tleepslib.sk.tsukuba.ac.jp>
author | stephent |
---|---|
date | Sat, 26 Nov 2005 11:46:25 +0000 |
parents | 0ae46b360391 |
children | 971e3c687f18 |
comparison
equal
deleted
inserted
replaced
3093:769dc945b085 | 3094:ad2f4ae9895b |
---|---|
5112 @strong{Convention}: Global variables whose names begin with @samp{Q} | 5112 @strong{Convention}: Global variables whose names begin with @samp{Q} |
5113 are constants whose value is a symbol. The name of the variable should | 5113 are constants whose value is a symbol. The name of the variable should |
5114 be derived from the name of the symbol using the same rules as for Lisp | 5114 be derived from the name of the symbol using the same rules as for Lisp |
5115 primitives. Such variables allow the C code to check whether a | 5115 primitives. Such variables allow the C code to check whether a |
5116 particular @code{Lisp_Object} is equal to a given symbol. Symbols are | 5116 particular @code{Lisp_Object} is equal to a given symbol. Symbols are |
5117 Lisp objects, so these variables may be passed to Lisp primitives. (An | 5117 Lisp objects, so these variables may be passed to Lisp primitives. (A |
5118 alternative to the use of @samp{Q...} variables is to call the | 5118 tempting alternative to the use of @samp{Q...} variables is to call the |
5119 @code{intern} function at initialization in the | 5119 @code{intern} function at initialization in the |
5120 @code{vars_of_@var{module}} function, which is hardly less efficient.) | 5120 @code{vars_of_@var{module}} function. But this does not |
5121 @code{staticpro} the symbol, which in theory could get uninterned, and | |
5122 then garbage collected while you're not looking. You could | |
5123 @code{staticpro} yourself, but in a production XEmacs @code{intern} and | |
5124 @code{staticpro} is all that @code{DEFSYMBOL} does, while in a debugging | |
5125 XEmacs it also does some error-checking, which you normally want.) | |
5121 | 5126 |
5122 @strong{Convention}: Global variables whose names begin with @samp{V} | 5127 @strong{Convention}: Global variables whose names begin with @samp{V} |
5123 are variables that contain Lisp objects. The convention here is that | 5128 are variables that contain Lisp objects. The convention here is that |
5124 all global variables of type @code{Lisp_Object} begin with @samp{V}, and | 5129 all global variables of type @code{Lisp_Object} begin with @samp{V}, and |
5125 no others do (not even integer and boolean variables that have Lisp | 5130 no others do (not even integer and boolean variables that have Lisp |