Handbook
Glossary
struct
Vocabulary
classes
.
struct
Class description
The parent class of all struct types.
See also
STRUCT:
,
UNION-STRUCT:
Definition
USING:
alien
;
IN:
classes.struct
TUPLE:
struct
{
(underlying)
c-ptr
read-only
initial:
f
}
;
Methods
USING:
alien
classes.struct
kernel.private
slots.private
;
M:
struct
>c-ptr
2
slot
{
c-ptr
}
declare
;
inline
USING:
classes
classes.struct
kernel
prettyprint.backend
prettyprint.custom
;
M:
struct
>pprint-sequence
[
class-of
]
[
struct-slot-values
]
bi
class-slot-sequence
;
USING:
alien
alien.c-types
alien.data
classes.struct
kernel
sequences
;
M:
struct
binary-zero?
binary-object
uchar
<c-direct-array>
[
0
=
]
all?
;
inline
USING:
alien
classes
classes.struct
;
M:
struct
byte-length
class-of
struct-size
;
inline
foldable
flushable
USING:
classes
classes.struct
kernel
;
M:
struct
equal?
[
[
class-of
]
same?
]
2check
[
[
struct-slot-values
]
same?
]
[
2drop
f
]
if
;
inline
USING:
alien
classes.struct
kernel
;
M:
struct
hashcode*
nip
dup
>c-ptr
[
struct-slot-values
hashcode
]
[
drop
0
]
if
;
inline
USING:
classes.struct
classes.struct.prettyprint
mirrors
;
M:
struct
make-mirror
<struct-mirror>
;
USING:
classes.struct
classes.struct.prettyprint.private
prettyprint.backend
prettyprint.custom
;
M:
struct
pprint*
[
pprint-struct
]
[
pprint-struct-pointer
]
pprint-c-object
;
USING:
classes.struct
kernel
prettyprint.custom
;
M:
struct
pprint-delims
drop
\
S{
\
}
;
USING:
accessors
alien
classes
classes.struct
kernel
make
math.parser
summary
;
M:
struct
summary
[
dup
class-of
name>>
%
" struct of "
%
byte-length
#
" bytes "
%
]
""
make
;
USING:
classes.struct
classes.struct.private
classes.tuple.private
generic
kernel
;
M:
struct
update-tuple
[
resize-underlying
]
[
M\
struct
update-tuple
(call-next-method)
]
bi
;