The static-vectors Reference Manual

This is the static-vectors Reference Manual, version 1.9.3, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Dec 15 07:46:50 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.9.3

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-abcl.lisp

If Feature

:abcl

Dependency

constantp.lisp (file).

Source

static-vectors.asd.

Parent Component

static-vectors (system).


3.1.5 static-vectors/impl-allegro.lisp

If Feature

:allegro

Dependencies
Source

static-vectors.asd.

Parent Component

static-vectors (system).


3.1.6 static-vectors/impl-clasp.lisp

If Feature

:clasp

Dependencies
Source

static-vectors.asd.

Parent Component

static-vectors (system).


3.1.7 static-vectors/impl-clozure.lisp

If Feature

:ccl

Dependencies
Source

static-vectors.asd.

Parent Component

static-vectors (system).


3.1.8 static-vectors/impl-cmucl.lisp

If Feature

:cmu

Dependencies
Source

static-vectors.asd.

Parent Component

static-vectors (system).


3.1.9 static-vectors/impl-ecl.lisp

If Feature

:ecl

Dependencies
Source

static-vectors.asd.

Parent Component

static-vectors (system).


3.1.10 static-vectors/impl-lispworks.lisp

If Feature

:lispworks

Dependencies
Source

static-vectors.asd.

Parent Component

static-vectors (system).


3.1.11 static-vectors/impl-sbcl.lisp

If Feature

:sbcl

Dependencies
Source

static-vectors.asd.

Parent Component

static-vectors (system).

Public Interface
Internals

3.1.12 static-vectors/constructor.lisp

Dependencies
Source

static-vectors.asd.

Parent Component

static-vectors (system).

Public Interface
Internals

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

Dependency

constructor.lisp (file).

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-sbcl.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-sbcl.lisp.

Function: free-static-vector (vector)

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

Package

static-vectors.

Source

impl-sbcl.lisp.

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

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-sbcl.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-sbcl.lisp.


5.2 Internals


5.2.1 Constants

Constant: +array-header-size+
Package

static-vectors.

Source

impl-sbcl.lisp.

Constant: +default-alignment+
Package

static-vectors.

Source

constructor.lisp.

Constant: +max-alignment+
Package

static-vectors.

Source

constructor.lisp.


5.2.2 Ordinary functions

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

static-vectors.

Source

impl-sbcl.lisp.

Function: %memalign (size alignment)
Package

static-vectors.

Source

impl-sbcl.lisp.

Function: align (size boundary)
Package

static-vectors.

Source

impl-sbcl.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 start of the Lisp VECTOR(including its header). VECTOR must be a vector created by MAKE-STATIC-VECTOR.

Package

static-vectors.

Source

impl-sbcl.lisp.

Function: vector-widetag-and-n-bytes (type)

Returns the widetag and octet size of the upgraded array element type for a given type specifier.

Package

static-vectors.

Source

impl-sbcl.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

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

%
%allocate-static-vector: Private ordinary functions
%memalign: Private ordinary functions

A
align: 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, %memalign: Private ordinary functions
Function, align: 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-bytes: 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-bytes: Private ordinary functions

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


A.4 Data types

Jump to:   C   F   I   P   S  
Index Entry  Section

C
cffi-type-translator.lisp: The static-vectors/cffi-type-translator․lisp file
constantp.lisp: The static-vectors/constantp․lisp file
constructor.lisp: The static-vectors/constructor․lisp file

F
File, cffi-type-translator.lisp: The static-vectors/cffi-type-translator․lisp file
File, constantp.lisp: The static-vectors/constantp․lisp file
File, constructor.lisp: The static-vectors/constructor․lisp file
File, impl-abcl.lisp: The static-vectors/impl-abcl․lisp file
File, impl-allegro.lisp: The static-vectors/impl-allegro․lisp file
File, impl-clasp.lisp: The static-vectors/impl-clasp․lisp file
File, impl-clozure.lisp: The static-vectors/impl-clozure․lisp file
File, impl-cmucl.lisp: The static-vectors/impl-cmucl․lisp file
File, impl-ecl.lisp: The static-vectors/impl-ecl․lisp file
File, impl-lispworks.lisp: The static-vectors/impl-lispworks․lisp file
File, impl-sbcl.lisp: The static-vectors/impl-sbcl․lisp file
File, pkgdcl.lisp: The static-vectors/pkgdcl․lisp file
File, static-vectors.asd: The static-vectors/static-vectors․asd file

I
impl-abcl.lisp: The static-vectors/impl-abcl․lisp file
impl-allegro.lisp: The static-vectors/impl-allegro․lisp file
impl-clasp.lisp: The static-vectors/impl-clasp․lisp file
impl-clozure.lisp: The static-vectors/impl-clozure․lisp file
impl-cmucl.lisp: The static-vectors/impl-cmucl․lisp file
impl-ecl.lisp: The static-vectors/impl-ecl․lisp file
impl-lispworks.lisp: The static-vectors/impl-lispworks․lisp file
impl-sbcl.lisp: The static-vectors/impl-sbcl․lisp file

P
Package, static-vectors: The static-vectors package
pkgdcl.lisp: The static-vectors/pkgdcl․lisp file

S
static-vectors: The static-vectors system
static-vectors: The static-vectors package
static-vectors.asd: The static-vectors/static-vectors․asd file
System, static-vectors: The static-vectors system