with-stack-fobject

$Revision: 5.0.2.2 $

Macro

Package: FOREIGN-FUNCTIONS

Arguments: ((var type &rest etc) &rest body)

Allocate an object of type type on the stack and bind it to var while evaluating body. The object will be of allocation type :foreign for the purposes of accessing it with fslot-value and associated functions. The object will disappear after control leaves body thus the program must not maintain any pointers to the object past this point. Currently, if this form is evaluated by the interpreter, the object will be allocated as a :foreign object, which means it will be in the lisp heap. This may not be what you want since you may need to allocate an object that doesn't move during garbage collection. In the future, we will arrange that if stack allocation can't be done, then the object will be allocated as :foreign-static-gc.

Multiple bindings can be done with with-stack-fobjects.

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

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

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