register-lisp-value

$Revision: 5.0.2.4 $

Function

Package: FOREIGN-FUNCTIONS

Arguments: (value &optional index)

The value is stored in the table of foreign values at the requested index, if index is given; or in a free slot if index is not given. Two values are returned: the index and the previous value at that index (or nil if there was no previous value at that index).

Note that there is a distinction between registering a symbol and its value. To register the value of a symbol, one wants to evaluate the symbol. To register the symbol object itself, one must quote it. Thus

(ff:register-lisp-value 'my-symbol)

registers the symbol my-symbol, whereas

(ff:register-lisp-value my-symbol)

registers the (current) value of my-symbol. If one registers the value of a symbol and subsequently the value is changed, the change will not be reflected in the value returned by lisp_value() in C (described in foreign_functions.htm). If one registers a symbol, one must use special macros in C to access the value of the symbol.

See ftype.htm for information on foreign types in Allegro CL. See foreign_functions.htm for general information on foreign functions in Allegro CL.

The general documentation description is in introduction.htm. The index in index.htm.

Copyright (C) 1998-1999, Franz Inc., Berkeley, CA. All Rights Reserved.