| Allegro CL version 8.2 Unrevised from 8.1 to 8.2. 8.1 version |
Arguments: ftype
This function returns the size of an object of the given foreign
type. The argument ftype can be an ftype
or a name of a foreign type or certain kinds of fobjects. (fobjects
are the objects that result from a call to ff:allocate-fobject and related functions.) Only
fobjects of allocation type :foreign
or
:foreign-static-gc
can be arguments to this
function. fobjects of allocation types :lisp
,
:lisp-short
, :c
, and
:aligned
cannot be arguments. The allocation type
is defined when the object is created. Note that objects of allocation
type :lisp
have their own lisp types, and thus do
not imply a foreign-type; and objects of :c
allocation are just integers, and thus again do not imply a
foreign-type.
The size only includes the data bytes and not any overhead bytes needed by lisp.
cl-user(1): (ff:def-foreign-type point (:struct (x :int) (y :int))) #<foreign-functions::foreign-structure point> cl-user(2): (setq obj (ff:allocate-fobject 'point :foreign-static-gc)) #<foreign object of class point> cl-user(3): (ff:sizeof-fobject 'point) 8 cl-user(4): (ff:sizeof-fobject (ff:get-foreign-type 'point)) 8 cl-user(5): (ff:sizeof-fobject obj) 8 cl-user(6):
See ftype.htm for information on foreign types in Allegro CL and foreign-functions.htm for general information on foreign functions in Allegro CL.
Copyright (c) 1998-2016, Franz Inc. Oakland, CA., USA. All rights reserved.
This page was not revised from the 8.1 page.
Created 2010.1.21.
| Allegro CL version 8.2 Unrevised from 8.1 to 8.2. 8.1 version |