Skip to content

Instantly share code, notes, and snippets.

@death
Created January 25, 2021 15:13
Show Gist options
  • Select an option

  • Save death/a7403e30d0b6eb3b759ad5901e745a0c to your computer and use it in GitHub Desktop.

Select an option

Save death/a7403e30d0b6eb3b759ad5901e745a0c to your computer and use it in GitHub Desktop.
defcstruct count/array usage
CL-USER> (test-defcstruct-array)
[third-party/cells-gtk3/gtk-ffi/gtk-core.lisp:53]
(CFFI:DEFCSTRUCT G-VALUE
(G-TYPE GTYPE)
(G-DATA (:ARRAY G-VALUE-DATA 2)))
[third-party/cffi/tests/fsbv.lisp:88]
(DEFCSTRUCT (STRUCT-WITH-ARRAY :SIZE 6) (S1 (:ARRAY :CHAR 6)))
CL-USER> (test-defcstruct-count)
[local-projects/hspell/low-level.lisp:46]
(DEFCSTRUCT CORLIST (CORRECTION :CHAR :COUNT 1500) (N :INT))
[third-party/antik/foreign-array/complex-types.lisp:29]
(CFFI:DEFCSTRUCT (COMPLEX-FLOAT-C :CLASS COMPLEX-FLOAT-TYPE)
(DAT :FLOAT :COUNT 2))
[third-party/antik/foreign-array/complex-types.lisp:42]
(CFFI:DEFCSTRUCT (COMPLEX-DOUBLE-C :CLASS COMPLEX-DOUBLE-TYPE)
(DAT :DOUBLE :COUNT 2))
[third-party/antik/foreign-array/complex-types.lisp:56]
(CFFI:DEFCSTRUCT COMPLEX-LONG-DOUBLE-C
(DAT :LONG-DOUBLE :COUNT 2))
[third-party/cl-cuda/src/lang/data.lisp:240]
(CFFI:DEFCSTRUCT CURAND-STATE-XORWOW
(D :UNSIGNED-INT)
(V :UNSIGNED-INT :COUNT 5)
(BOXMULLER-FLAG :INT)
(BOXMULLER-FLAG-DOUBLE :INT)
(BOXMULLER-EXTRA :FLOAT)
(BOXMULLER-EXTRA-DOUBLE :DOUBLE))
[third-party/cl-tcod/tcod.lisp:1075]
(DEFCSTRUCT KEY-PRESS (VK KEYCODE) (C :CHAR) (TEXT :CHAR :COUNT 32)
(FLAG-PRESSED :BOOL) (FLAG-LALT :BOOL) (FLAG-LCTRL :BOOL) (FLAG-LMETA :BOOL)
(FLAG-RALT :BOOL) (FLAG-RCTRL :BOOL) (FLAG-RMETA :BOOL) (FLAG-SHIFT :BOOL))
[third-party/cl-tcod/tcod.lisp:1091]
(DEFCSTRUCT KEY-PRESS (VK KEYCODE) (C :UINT8) (TEXT :UINT8 :COUNT 32)
(FLAG-PRESSED :UINT8) (FLAG-LALT :UINT8) (FLAG-LCTRL :UINT8)
(FLAG-LMETA :UINT8) (FLAG-RALT :UINT8) (FLAG-RCTRL :UINT8)
(FLAG-RMETA :UINT8) (FLAG-SHIFT :UINT8))
[third-party/croatoan/ncurses/ncurses.lisp:194]
(CFFI:DEFCSTRUCT CCHAR_T
"C struct containing a wide char, a color pair and attributes."
(CCHAR-ATTR ATTR_T)
(CCHAR-CHARS WCHAR_T :COUNT 5)
(CCHAR-COLORS :INT))
[third-party/fsocket/common.lisp:71]
(DEFCSTRUCT (SOCKADDR-IN :CLASS SOCKADDR-IN-TCLASS) (FAMILY :UINT16)
(PORT :UINT16) (ADDR :UINT8 :COUNT 4) (ZERO :UINT8 :COUNT 8))
[third-party/fsocket/common.lisp:168]
(DEFCSTRUCT (SOCKADDR-IN6 :CLASS SOCKADDR-IN6-TCLASS) (FAMILY :UINT16)
(PORT :UINT16) (FLOWINFO :UINT32) (ADDR :UINT16 :COUNT 8) (SCOPEID :UINT32))
[third-party/fsocket/common.lisp:244]
(DEFCSTRUCT (SOCKADDR-UN :CLASS SOCKADDR-UN-TCLASS) (FAMILY :UINT16)
(PATH :UINT8 :COUNT 108))
[third-party/fsocket/options.lisp:184]
(DEFCSTRUCT GROUP-REQ (IFACE :UINT32) (PADDING1 :UINT32)
(ADDR :UINT8 :COUNT 132))
[third-party/fsocket/posix.lisp:146]
(DEFCSTRUCT IFREQ (NAME :UINT8 :COUNT 16) (DATA (:UNION IFREQ-DATA)))
[third-party/fsocket/posix.lisp:1055]
(DEFCSTRUCT RES-STATE (RETRANS :INT32) (RETRY :INT32) (OPTIONS :UINT64)
(NSCOUNT :INT32) (NSADDRS (:STRUCT SOCKADDR-IN) :COUNT 3))
[third-party/fsocket/windows.lisp:74]
(DEFCSTRUCT WSADATA (VERSION :UINT16) (HIGHVERSION :UINT16)
(MAX-SOCK :UINT16) (MAX-DATAGRAM :UINT16) (VENDOR-INFO :POINTER)
(DESC :CHAR :COUNT 257) (STATUS :CHAR :COUNT 129))
[third-party/fsocket/windows.lisp:700]
(DEFCSTRUCT WSA-NETWORK-EVENTS (EVENTS :UINT32) (IERRORS :UINT32 :COUNT 10))
[third-party/fsocket/windows.lisp:992]
(DEFCSTRUCT IP-ADAPTER-ADDRESS (LENGTH :UINT32) (INDEX :UINT32)
(NEXT :POINTER) (NAME :POINTER) (UNICAST-ADDRESS :POINTER)
(ANYCAST-ADDRESS :POINTER) (MULTICAST-ADDRESS :POINTER)
(DNS-ADDRESS :POINTER) (DNS-SUFFIX :POINTER) (DESCRIPTION :POINTER)
(FRIENDLY-NAME :POINTER) (PHYSICAL-ADDRESS :UINT8 :COUNT 8)
(PHYSICAL-ADDRESS-LEN :UINT32) (FLAGS :UINT32) (MTU :UINT32)
(IFTYPE :UINT32) (STATUS :UINT32) (IPV6-INDEX :UINT32)
(ZONE-INDICES :UINT32 :COUNT 16) (FIRST-PREFIX :POINTER)
(TRANSMIT-SPEED :UINT64) (RECEIVE-SPEED :UINT64) (WINS-SERVER :POINTER)
(GATEWAY-ADDRESS :POINTER) (IPV4-METRIC :UINT32) (IPV6-METRIC :UINT32)
(LUID :UINT64) (DHCP-SERVER :POINTER) (DHCP-SERVER-LEN :UINT32)
(COMPARTMENT-ID :UINT32) (NETWORK-GUID :UINT8 :COUNT 16) (CONN-TYPE :UINT32)
(DHCP-SERVER6 :POINTER) (DHCP-SERVER6-LEN :UINT32) (DUID :UINT8 :COUNT 130)
(DUID-LEN :UINT32) (IAD :UINT32) (DNS-SUFFIX :POINTER))
[third-party/fsocket/windows.lisp:1061]
(DEFCSTRUCT IP-ADDR-STRING (NEXT :POINTER) (ADDR :UINT8 :COUNT 16)
(MASK :UINT8 :COUNT 16) (CONTEXT :UINT32))
[third-party/fsocket/windows.lisp:1073]
(DEFCSTRUCT IP-ADDR-STRING (NEXT :POINTER) (ADDR :UINT8 :COUNT 16)
(MASK :UINT8 :COUNT 16) (CONTEXT :UINT32))
[third-party/fsocket/windows.lisp:1099]
(DEFCSTRUCT IP-ADAPTER-INFO (NEXT :POINTER) (COMBO-INDEX :UINT32)
(ADAPTER-NAME :UINT8 :COUNT 260) (DESCRIPTION :UINT8 :COUNT 132)
(ADDRLEN :UINT32) (ADDR :UINT8 :COUNT 8) (INDEX :UINT32) (TYPE :UINT32)
(DHCP-ENABLED :UINT32) (CURRENT-IP-ADDRESS :POINTER)
(IP-ADDRESS-LIST (:STRUCT IP-ADDR-STRING))
(GATEWAY-LIST (:STRUCT IP-ADDR-STRING))
(DHCP-SERVER (:STRUCT IP-ADDR-STRING)) (HAVEWINS :BOOLEAN)
(PRIMARY-WINS-SERVER (:STRUCT IP-ADDR-STRING))
(SECONDARY-WINS-SERVER (:STRUCT IP-ADDR-STRING)) (LEASE-OBTAINED :UINT64)
(LEASE-EXPIRES :UINT64))
[third-party/fsocket/windows.lisp:1334]
(DEFCSTRUCT FIXED-INFO (HOSTNAME :UINT8 :COUNT 132)
(DOMAIN-NAME :UINT8 :COUNT 132) (CURRENT-DNS-SERVER :POINTER)
(DNS-SERVER-LIST (:STRUCT IP-ADDR-STRING)) (NODE-TYPE :UINT32)
(SCOPE-ID :UINT8 :COUNT 260) (ENABLE-ROUTING :UINT32) (ENABLE-PROXY :UINT32)
(ENABLE-DNS :UINT32))
[third-party/incudine/contrib/cl-sndfile/cffi-sndfile.lisp:384]
(CFFI:DEFCSTRUCT INSTRUMENT
(GAIN :INT)
(BASENOTE :CHAR)
(DETUNE :CHAR)
(VELOCITY-LO :CHAR)
(VELOCITY-HI :CHAR)
(KEY-LO :CHAR)
(KEY-HI :CHAR)
(LOOP-COUNT :INT)
(LOOPS :INT :COUNT 64))
[third-party/incudine/contrib/cl-sndfile/cffi-sndfile.lisp:395]
(CFFI:DEFCSTRUCT LOOP-INFO
(TIME-SIG-NUM :SHORT)
(TIME-SIG-DEN :SHORT)
(LOOP-MODE :INT)
(NUM-BEATS :INT)
(BPM :FLOAT)
(ROOT-KEY :INT)
(FUTURE :INT :COUNT 6))
[third-party/incudine/contrib/cl-sndfile/cffi-sndfile.lisp:404]
(CFFI:DEFCSTRUCT BROADCAST-INFO
(DESCRIPTION :CHAR :COUNT 256)
(ORIGINATOR :CHAR :COUNT 32)
(ORIGINATOR-REFERENCE :CHAR :COUNT 32)
(ORIGINATION-DATE :CHAR :COUNT 10)
(ORIGINATION-TIME :CHAR :COUNT 8)
(TIME-REFERENCE-LOW :UNSIGNED-INT)
(TIME-REFERENCE-HIGH :UNSIGNED-INT)
(VERSION :SHORT)
(UMID :CHAR :COUNT 64)
(RESERVED :CHAR :COUNT 190)
(CODING-HISTORY-SIZE :UNSIGNED-INT)
(CODING-HISTORY :CHAR :COUNT 256))
[third-party/informatimago/clext/pkcs11/pkcs11-cffi.lisp:360]
(DEFCSTRUCT INFO (CRYPTOKI-VERSION (:STRUCT VERSION))
(MANUFACTURER-ID :UCHAR :COUNT 32) (FLAGS FLAGS)
(LIBRARY-DESCRIPTION :UCHAR :COUNT 32) (LIBRARY-VERSION (:STRUCT VERSION)))
[third-party/informatimago/clext/pkcs11/pkcs11-cffi.lisp:368]
(DEFCSTRUCT SLOT-INFO (SLOT-DESCRIPTION :UCHAR :COUNT 64)
(MANUFACTURER-ID :UCHAR :COUNT 32) (FLAGS FLAGS)
(HARDWARE-VERSION (:STRUCT VERSION)) (FIRMWARE-VERSION (:STRUCT VERSION)))
[third-party/informatimago/clext/pkcs11/pkcs11-cffi.lisp:381]
(DEFCSTRUCT TOKEN-INFO (LABEL :UCHAR :COUNT 32)
(MANUFACTURER-ID :UCHAR :COUNT 32) (MODEL :UCHAR :COUNT 16)
(SERIAL-NUMBER :UCHAR :COUNT 16) (FLAGS FLAGS) (MAX-SESSION-COUNT :ULONG)
(SESSION-COUNT :ULONG) (MAX-RW-SESSION-COUNT :ULONG)
(RW-SESSION-COUNT :ULONG) (MAX-PIN-LEN :ULONG) (MIN-PIN-LEN :ULONG)
(TOTAL-PUBLIC-MEMORY :ULONG) (FREE-PUBLIC-MEMORY :ULONG)
(TOTAL-PRIVATE-MMEORY :ULONG) (FREE-PRIVATE-MEMORY :ULONG)
(HARDWARE-VERSION (:STRUCT VERSION)) (FIRMWARE-VERSION (:STRUCT VERSION))
(UTC-TIME :UCHAR :COUNT 16))
[third-party/informatimago/clext/pkcs11/pkcs11-cffi.lisp:601]
(DEFCSTRUCT DATE (YEAR :UCHAR :COUNT 4) (MONTH :UCHAR :COUNT 2)
(DAY :UCHAR :COUNT 2))
[third-party/lispbuilder/lispbuilder-openrm/cffi/openrm.lisp:315]
(CFFI:DEFCSTRUCT NIL
(NIL :FLOAT :COUNT 16))
[third-party/lispbuilder/lispbuilder-openrm/cffi/openrm.lisp:318]
(CFFI:DEFCSTRUCT _OBJECT_INFO
(NAME :CHAR :COUNT 64)
(POSTED :INT)
(RPASS_VDIMS :INT)
(RPASS_OPACITY :INT)
(CHANNEL :INT)
(PICKENABLE :INT))
[third-party/lispbuilder/lispbuilder-openrm/cffi/openrm.lisp:329]
(CFFI:DEFCSTRUCT RM-PIPE
(OFFSCREEN :INT)
(PROCESSING-MODE :INT)
(CHANNEL-FORMAT :INT)
(XWINDOW-WIDTH :INT)
(XWINDOW-HEIGHT :INT)
(XFLAGS :INT)
(OPAQUE-3D-ENABLE :INT)
(TRANSPARENT-3D-ENABLE :INT)
(OPAQUE-2D-ENABLE :INT)
(INIT-MATRIX-STACK :INT)
(FRAME-NUMBER :INT)
(DISPLAY-LIST-ENABLE-BOOL :INT)
(CONTEXT-CACHE :POINTER)
(DISPLAY-LISTS :POINTER)
(MT-CONTROL :POINTER)
(HDC :POINTER)
(HWND :POINTER)
(H-RC :POINTER)
(MY-RANK :INT)
(GLOBAL-NPE :INT)
(TARGET-PLATFORM :INT)
(CHANNEL-RENDER-FUNC :POINTER)
(POST-RENDER-BARRIER-FUNC :POINTER)
(POSTRENDERFUNC :POINTER)
(POSTRENDER-DEPTHBUFFERFUNC :POINTER)
(SWAP-BUFFERS-FUNC :POINTER)
(SHUTDOWN-FUNC :POINTER)
(POST-FB-CLEAR-BARRIER-FUNC :POINTER)
(CREATE-CONTEXT-FUNC :POINTER)
(TARGET-FRAME-RATE :INT)
(TIME-PER-FRAME :POINTER)
(TIME-PER-FRAME-MS :DOUBLE)
(LAST-TIME-START :POINTER)
(LAST-RENDER-TIME :POINTER)
(TIME-SYNC-FUNC :POINTER)
(CAPS :POINTER)
(FB-CLEAR-NODE :POINTER)
(LOCAL-MASK-STACK :INT :COUNT 65)
(LOCAL-MASK-STACK-TOP :INT))
[third-party/lispbuilder/lispbuilder-sdl/cffi/audio.lisp:32]
(CFFI:DEFCSTRUCT SDL-AUDIO-CVT
(NEEDED :INT)
(SRC-FORMAT :UNSIGNED-SHORT)
(DST-FORMAT :UNSIGNED-SHORT)
(RATE-INCR :DOUBLE)
(BUF :POINTER)
(LEN :INT)
(LEN-CVT :INT)
(LEN-MULT :INT)
(LEN-RATIO :DOUBLE)
(FILTERS :POINTER :COUNT 10)
(FILTER-INDEX :INT))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment