Node:Immediate objects, Next:Non-immediate objects, Previous:Relationship between SCM and scm_t_bits, Up:Unpacking the SCM type
A Scheme object may either be an immediate, i.e. carrying all necessary information by itself, or it may contain a reference to a cell with additional information on the heap. Although in general it should be irrelevant for user code whether an object is an immediate or not, within Guile's own code the distinction is sometimes of importance. Thus, the following low level macro is provided:
int SCM_IMP (SCM x) | Macro |
A Scheme object is an immediate if it fulfills the SCM_IMP
predicate, otherwise it holds an encoded reference to a heap cell. The
result of the predicate is delivered as a C style boolean value. User
code and code that extends Guile should normally not be required to use
this macro.
|
Summary:
SCM_IMP (x)
if it is an immediate object.
scm_t_bits
value that is delivered by SCM_UNPACK
(x)
.