The static-vectors Reference Manual

This is the static-vectors Reference Manual, version 1.8.9, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 17:57:32 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 static-vectors

Create vectors allocated in static memory.

Author

Stelian Ionescu <>

License

MIT

Version

1.8.9

Defsystem Dependency

cffi-grovel (system).

Dependencies
  • alexandria (system).
  • cffi (system).
Source

static-vectors.asd.

Child Components

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


3.1 Lisp


3.1.1 static-vectors/static-vectors.asd

Source

static-vectors.asd.

Parent Component

static-vectors (system).

ASDF Systems

static-vectors.


3.1.2 static-vectors/pkgdcl.lisp

Source

static-vectors.asd.

Parent Component

static-vectors (system).

Packages

static-vectors.


3.1.3 static-vectors/constantp.lisp

Dependency

pkgdcl.lisp (file).

Source

static-vectors.asd.

Parent Component

static-vectors (system).

Internals

3.1.4 static-vectors/impl.lisp

Dependencies
Source

static-vectors.asd.

Parent Component

static-vectors (system).

Public Interface
Internals

3.1.5 static-vectors/constructor.lisp

Dependencies
Source

static-vectors.asd.

Parent Component

static-vectors (system).

Public Interface
Internals

3.1.6 static-vectors/cffi-type-translator.lisp

Dependencies
Source

static-vectors.asd.

Parent Component

static-vectors (system).


4 Packages

Packages are listed by definition order.


4.1 static-vectors

Source

pkgdcl.lisp.

Use List
  • alexandria.
  • cffi.
  • common-lisp.
Public Interface
Internals

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


5.1 Public Interface


5.1.1 Macros

Macro: with-static-vector ((var length &rest args &key element-type initial-contents initial-element) &body body)

Bind PTR-VAR to a static vector of length LENGTH and execute BODY within its dynamic extent. The vector is freed upon exit.

Package

static-vectors.

Source

impl.lisp.

Macro: with-static-vectors (((var length &rest args) &rest more-clauses) &body body)

Allocate multiple static vectors at once.

Package

static-vectors.

Source

constructor.lisp.


5.1.2 Ordinary functions

Function: fill-foreign-memory (pointer length value)

Fill LENGTH octets in foreign memory area POINTER with VALUE.

Package

static-vectors.

Source

impl.lisp.

Function: free-static-vector (vector)

Free VECTOR, which must be a vector created by MAKE-STATIC-VECTOR.

Package

static-vectors.

Source

impl.lisp.

Function: make-static-vector (length &key element-type initial-element initial-contents)

Create a simple vector of length LENGTH and type ELEMENT-TYPE which will not be moved by the garbage collector. The vector might be allocated in foreign memory so you must always call FREE-STATIC-VECTOR to free it.

Package

static-vectors.

Source

constructor.lisp.

Function: replace-foreign-memory (dst-ptr src-ptr length)

Copy LENGTH octets from foreign memory area SRC-PTR to DST-PTR.

Package

static-vectors.

Source

impl.lisp.

Function: static-vector-pointer (vector &key offset)

Return a foreign pointer to the beginning of VECTOR + OFFSET octets. VECTOR must be a vector created by MAKE-STATIC-VECTOR.

Package

static-vectors.

Source

impl.lisp.


5.2 Internals


5.2.1 Constants

Constant: +array-header-size+
Package

static-vectors.

Source

impl.lisp.


5.2.2 Ordinary functions

Function: %allocate-static-vector (length element-type)
Package

static-vectors.

Source

impl.lisp.

Function: canonicalize-args (env element-type length)
Package

static-vectors.

Source

constantp.lisp.

Function: check-arguments (length element-type initial-element initial-element-p initial-contents initial-contents-p)
Package

static-vectors.

Source

constructor.lisp.

Function: check-initial-contents (length initial-contents)
Package

static-vectors.

Source

constructor.lisp.

Function: check-initial-element (element-type initial-element)
Package

static-vectors.

Source

constructor.lisp.

Function: check-initialization-arguments (initial-element-p initial-contents-p)
Package

static-vectors.

Source

constructor.lisp.

Function: constantp (form &optional env)
Package

static-vectors.

Source

constantp.lisp.

Function: eval-constant (form &optional env)
Package

static-vectors.

Source

constantp.lisp.

Function: quotedp (form)
Package

static-vectors.

Source

constantp.lisp.

Function: static-vector-address (vector)

Return a foreign pointer to VECTOR(including its header). VECTOR must be a vector created by MAKE-STATIC-VECTOR.

Package

static-vectors.

Source

impl.lisp.

Function: vector-widetag-and-n-bits (type)
Package

static-vectors.

Source

impl.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %  
C   E   F   M   Q   R   S   V   W  
Index Entry  Section

%
%allocate-static-vector: Private ordinary functions

C
canonicalize-args: Private ordinary functions
check-arguments: Private ordinary functions
check-initial-contents: Private ordinary functions
check-initial-element: Private ordinary functions
check-initialization-arguments: Private ordinary functions
constantp: Private ordinary functions

E
eval-constant: Private ordinary functions

F
fill-foreign-memory: Public ordinary functions
free-static-vector: Public ordinary functions
Function, %allocate-static-vector: Private ordinary functions
Function, canonicalize-args: Private ordinary functions
Function, check-arguments: Private ordinary functions
Function, check-initial-contents: Private ordinary functions
Function, check-initial-element: Private ordinary functions
Function, check-initialization-arguments: Private ordinary functions
Function, constantp: Private ordinary functions
Function, eval-constant: Private ordinary functions
Function, fill-foreign-memory: Public ordinary functions
Function, free-static-vector: Public ordinary functions
Function, make-static-vector: Public ordinary functions
Function, quotedp: Private ordinary functions
Function, replace-foreign-memory: Public ordinary functions
Function, static-vector-address: Private ordinary functions
Function, static-vector-pointer: Public ordinary functions
Function, vector-widetag-and-n-bits: Private ordinary functions

M
Macro, with-static-vector: Public macros
Macro, with-static-vectors: Public macros
make-static-vector: Public ordinary functions

Q
quotedp: Private ordinary functions

R
replace-foreign-memory: Public ordinary functions

S
static-vector-address: Private ordinary functions
static-vector-pointer: Public ordinary functions

V
vector-widetag-and-n-bits: Private ordinary functions

W
with-static-vector: Public macros
with-static-vectors: Public macros


A.3 Variables

Jump to:   +  
C  
Index Entry  Section

+
+array-header-size+: Private constants

C
Constant, +array-header-size+: Private constants