7.5.5.2 SRFI-4 - API ¶
Note that the c32
and c64
functions are only available from
(srfi srfi-4 gnu)
.
- Scheme Procedure: u8vector? obj ¶
- Scheme Procedure: s8vector? obj ¶
- Scheme Procedure: u16vector? obj ¶
- Scheme Procedure: s16vector? obj ¶
- Scheme Procedure: u32vector? obj ¶
- Scheme Procedure: s32vector? obj ¶
- Scheme Procedure: u64vector? obj ¶
- Scheme Procedure: s64vector? obj ¶
- Scheme Procedure: f32vector? obj ¶
- Scheme Procedure: f64vector? obj ¶
- Scheme Procedure: c32vector? obj ¶
- Scheme Procedure: c64vector? obj ¶
- C Function: scm_u8vector_p (obj) ¶
- C Function: scm_s8vector_p (obj) ¶
- C Function: scm_u16vector_p (obj) ¶
- C Function: scm_s16vector_p (obj) ¶
- C Function: scm_u32vector_p (obj) ¶
- C Function: scm_s32vector_p (obj) ¶
- C Function: scm_u64vector_p (obj) ¶
- C Function: scm_s64vector_p (obj) ¶
- C Function: scm_f32vector_p (obj) ¶
- C Function: scm_f64vector_p (obj) ¶
- C Function: scm_c32vector_p (obj) ¶
- C Function: scm_c64vector_p (obj) ¶
Return #t
if obj is a homogeneous numeric vector of the
indicated type.
- Scheme Procedure: make-u8vector n [value] ¶
- Scheme Procedure: make-s8vector n [value] ¶
- Scheme Procedure: make-u16vector n [value] ¶
- Scheme Procedure: make-s16vector n [value] ¶
- Scheme Procedure: make-u32vector n [value] ¶
- Scheme Procedure: make-s32vector n [value] ¶
- Scheme Procedure: make-u64vector n [value] ¶
- Scheme Procedure: make-s64vector n [value] ¶
- Scheme Procedure: make-f32vector n [value] ¶
- Scheme Procedure: make-f64vector n [value] ¶
- Scheme Procedure: make-c32vector n [value] ¶
- Scheme Procedure: make-c64vector n [value] ¶
- C Function: scm_make_u8vector (n, value) ¶
- C Function: scm_make_s8vector (n, value) ¶
- C Function: scm_make_u16vector (n, value) ¶
- C Function: scm_make_s16vector (n, value) ¶
- C Function: scm_make_u32vector (n, value) ¶
- C Function: scm_make_s32vector (n, value) ¶
- C Function: scm_make_u64vector (n, value) ¶
- C Function: scm_make_s64vector (n, value) ¶
- C Function: scm_make_f32vector (n, value) ¶
- C Function: scm_make_f64vector (n, value) ¶
- C Function: scm_make_c32vector (n, value) ¶
- C Function: scm_make_c64vector (n, value) ¶
Return a newly allocated homogeneous numeric vector holding n
elements of the indicated type. If value is given, the vector
is initialized with that value, otherwise the contents are
unspecified.
- Scheme Procedure: u8vector value … ¶
- Scheme Procedure: s8vector value … ¶
- Scheme Procedure: u16vector value … ¶
- Scheme Procedure: s16vector value … ¶
- Scheme Procedure: u32vector value … ¶
- Scheme Procedure: s32vector value … ¶
- Scheme Procedure: u64vector value … ¶
- Scheme Procedure: s64vector value … ¶
- Scheme Procedure: f32vector value … ¶
- Scheme Procedure: f64vector value … ¶
- Scheme Procedure: c32vector value … ¶
- Scheme Procedure: c64vector value … ¶
- C Function: scm_u8vector (values) ¶
- C Function: scm_s8vector (values) ¶
- C Function: scm_u16vector (values) ¶
- C Function: scm_s16vector (values) ¶
- C Function: scm_u32vector (values) ¶
- C Function: scm_s32vector (values) ¶
- C Function: scm_u64vector (values) ¶
- C Function: scm_s64vector (values) ¶
- C Function: scm_f32vector (values) ¶
- C Function: scm_f64vector (values) ¶
- C Function: scm_c32vector (values) ¶
- C Function: scm_c64vector (values) ¶
Return a newly allocated homogeneous numeric vector of the indicated
type, holding the given parameter values. The vector length is
the number of parameters given.
- Scheme Procedure: u8vector-length vec ¶
- Scheme Procedure: s8vector-length vec ¶
- Scheme Procedure: u16vector-length vec ¶
- Scheme Procedure: s16vector-length vec ¶
- Scheme Procedure: u32vector-length vec ¶
- Scheme Procedure: s32vector-length vec ¶
- Scheme Procedure: u64vector-length vec ¶
- Scheme Procedure: s64vector-length vec ¶
- Scheme Procedure: f32vector-length vec ¶
- Scheme Procedure: f64vector-length vec ¶
- Scheme Procedure: c32vector-length vec ¶
- Scheme Procedure: c64vector-length vec ¶
- C Function: scm_u8vector_length (vec) ¶
- C Function: scm_s8vector_length (vec) ¶
- C Function: scm_u16vector_length (vec) ¶
- C Function: scm_s16vector_length (vec) ¶
- C Function: scm_u32vector_length (vec) ¶
- C Function: scm_s32vector_length (vec) ¶
- C Function: scm_u64vector_length (vec) ¶
- C Function: scm_s64vector_length (vec) ¶
- C Function: scm_f32vector_length (vec) ¶
- C Function: scm_f64vector_length (vec) ¶
- C Function: scm_c32vector_length (vec) ¶
- C Function: scm_c64vector_length (vec) ¶
Return the number of elements in vec.
- Scheme Procedure: u8vector-ref vec i ¶
- Scheme Procedure: s8vector-ref vec i ¶
- Scheme Procedure: u16vector-ref vec i ¶
- Scheme Procedure: s16vector-ref vec i ¶
- Scheme Procedure: u32vector-ref vec i ¶
- Scheme Procedure: s32vector-ref vec i ¶
- Scheme Procedure: u64vector-ref vec i ¶
- Scheme Procedure: s64vector-ref vec i ¶
- Scheme Procedure: f32vector-ref vec i ¶
- Scheme Procedure: f64vector-ref vec i ¶
- Scheme Procedure: c32vector-ref vec i ¶
- Scheme Procedure: c64vector-ref vec i ¶
- C Function: scm_u8vector_ref (vec, i) ¶
- C Function: scm_s8vector_ref (vec, i) ¶
- C Function: scm_u16vector_ref (vec, i) ¶
- C Function: scm_s16vector_ref (vec, i) ¶
- C Function: scm_u32vector_ref (vec, i) ¶
- C Function: scm_s32vector_ref (vec, i) ¶
- C Function: scm_u64vector_ref (vec, i) ¶
- C Function: scm_s64vector_ref (vec, i) ¶
- C Function: scm_f32vector_ref (vec, i) ¶
- C Function: scm_f64vector_ref (vec, i) ¶
- C Function: scm_c32vector_ref (vec, i) ¶
- C Function: scm_c64vector_ref (vec, i) ¶
Return the element at index i in vec. The first element
in vec is index 0.
- Scheme Procedure: u8vector-set! vec i value ¶
- Scheme Procedure: s8vector-set! vec i value ¶
- Scheme Procedure: u16vector-set! vec i value ¶
- Scheme Procedure: s16vector-set! vec i value ¶
- Scheme Procedure: u32vector-set! vec i value ¶
- Scheme Procedure: s32vector-set! vec i value ¶
- Scheme Procedure: u64vector-set! vec i value ¶
- Scheme Procedure: s64vector-set! vec i value ¶
- Scheme Procedure: f32vector-set! vec i value ¶
- Scheme Procedure: f64vector-set! vec i value ¶
- Scheme Procedure: c32vector-set! vec i value ¶
- Scheme Procedure: c64vector-set! vec i value ¶
- C Function: scm_u8vector_set_x (vec, i, value) ¶
- C Function: scm_s8vector_set_x (vec, i, value) ¶
- C Function: scm_u16vector_set_x (vec, i, value) ¶
- C Function: scm_s16vector_set_x (vec, i, value) ¶
- C Function: scm_u32vector_set_x (vec, i, value) ¶
- C Function: scm_s32vector_set_x (vec, i, value) ¶
- C Function: scm_u64vector_set_x (vec, i, value) ¶
- C Function: scm_s64vector_set_x (vec, i, value) ¶
- C Function: scm_f32vector_set_x (vec, i, value) ¶
- C Function: scm_f64vector_set_x (vec, i, value) ¶
- C Function: scm_c32vector_set_x (vec, i, value) ¶
- C Function: scm_c64vector_set_x (vec, i, value) ¶
Set the element at index i in vec to value. The
first element in vec is index 0. The return value is
unspecified.
- Scheme Procedure: u8vector->list vec ¶
- Scheme Procedure: s8vector->list vec ¶
- Scheme Procedure: u16vector->list vec ¶
- Scheme Procedure: s16vector->list vec ¶
- Scheme Procedure: u32vector->list vec ¶
- Scheme Procedure: s32vector->list vec ¶
- Scheme Procedure: u64vector->list vec ¶
- Scheme Procedure: s64vector->list vec ¶
- Scheme Procedure: f32vector->list vec ¶
- Scheme Procedure: f64vector->list vec ¶
- Scheme Procedure: c32vector->list vec ¶
- Scheme Procedure: c64vector->list vec ¶
- C Function: scm_u8vector_to_list (vec) ¶
- C Function: scm_s8vector_to_list (vec) ¶
- C Function: scm_u16vector_to_list (vec) ¶
- C Function: scm_s16vector_to_list (vec) ¶
- C Function: scm_u32vector_to_list (vec) ¶
- C Function: scm_s32vector_to_list (vec) ¶
- C Function: scm_u64vector_to_list (vec) ¶
- C Function: scm_s64vector_to_list (vec) ¶
- C Function: scm_f32vector_to_list (vec) ¶
- C Function: scm_f64vector_to_list (vec) ¶
- C Function: scm_c32vector_to_list (vec) ¶
- C Function: scm_c64vector_to_list (vec) ¶
Return a newly allocated list holding all elements of vec.
- Scheme Procedure: list->u8vector lst ¶
- Scheme Procedure: list->s8vector lst ¶
- Scheme Procedure: list->u16vector lst ¶
- Scheme Procedure: list->s16vector lst ¶
- Scheme Procedure: list->u32vector lst ¶
- Scheme Procedure: list->s32vector lst ¶
- Scheme Procedure: list->u64vector lst ¶
- Scheme Procedure: list->s64vector lst ¶
- Scheme Procedure: list->f32vector lst ¶
- Scheme Procedure: list->f64vector lst ¶
- Scheme Procedure: list->c32vector lst ¶
- Scheme Procedure: list->c64vector lst ¶
- C Function: scm_list_to_u8vector (lst) ¶
- C Function: scm_list_to_s8vector (lst) ¶
- C Function: scm_list_to_u16vector (lst) ¶
- C Function: scm_list_to_s16vector (lst) ¶
- C Function: scm_list_to_u32vector (lst) ¶
- C Function: scm_list_to_s32vector (lst) ¶
- C Function: scm_list_to_u64vector (lst) ¶
- C Function: scm_list_to_s64vector (lst) ¶
- C Function: scm_list_to_f32vector (lst) ¶
- C Function: scm_list_to_f64vector (lst) ¶
- C Function: scm_list_to_c32vector (lst) ¶
- C Function: scm_list_to_c64vector (lst) ¶
Return a newly allocated homogeneous numeric vector of the indicated type,
initialized with the elements of the list lst.
- C Function:
SCM
scm_take_u8vector (const scm_t_uint8 *data, size_t len)
¶
- C Function:
SCM
scm_take_s8vector (const scm_t_int8 *data, size_t len)
¶
- C Function:
SCM
scm_take_u16vector (const scm_t_uint16 *data, size_t len)
¶
- C Function:
SCM
scm_take_s16vector (const scm_t_int16 *data, size_t len)
¶
- C Function:
SCM
scm_take_u32vector (const scm_t_uint32 *data, size_t len)
¶
- C Function:
SCM
scm_take_s32vector (const scm_t_int32 *data, size_t len)
¶
- C Function:
SCM
scm_take_u64vector (const scm_t_uint64 *data, size_t len)
¶
- C Function:
SCM
scm_take_s64vector (const scm_t_int64 *data, size_t len)
¶
- C Function:
SCM
scm_take_f32vector (const float *data, size_t len)
¶
- C Function:
SCM
scm_take_f64vector (const double *data, size_t len)
¶
- C Function:
SCM
scm_take_c32vector (const float *data, size_t len)
¶
- C Function:
SCM
scm_take_c64vector (const double *data, size_t len)
¶
Return a new uniform numeric vector of the indicated type and length
that uses the memory pointed to by data to store its elements.
This memory will eventually be freed with free
. The argument
len specifies the number of elements in data, not its size
in bytes.
The c32
and c64
variants take a pointer to a C array of
float
s or double
s. The real parts of the complex numbers
are at even indices in that array, the corresponding imaginary parts are
at the following odd index.
- C Function:
const scm_t_uint8 *
scm_u8vector_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
const scm_t_int8 *
scm_s8vector_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
const scm_t_uint16 *
scm_u16vector_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
const scm_t_int16 *
scm_s16vector_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
const scm_t_uint32 *
scm_u32vector_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
const scm_t_int32 *
scm_s32vector_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
const scm_t_uint64 *
scm_u64vector_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
const scm_t_int64 *
scm_s64vector_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
const float *
scm_f32vector_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
const double *
scm_f64vector_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
const float *
scm_c32vector_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
const double *
scm_c64vector_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
Like scm_vector_elements
(see Vector Accessing from C), but
returns a pointer to the elements of a uniform numeric vector of the
indicated kind.
- C Function:
scm_t_uint8 *
scm_u8vector_writable_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
scm_t_int8 *
scm_s8vector_writable_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
scm_t_uint16 *
scm_u16vector_writable_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
scm_t_int16 *
scm_s16vector_writable_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
scm_t_uint32 *
scm_u32vector_writable_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
scm_t_int32 *
scm_s32vector_writable_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
scm_t_uint64 *
scm_u64vector_writable_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
scm_t_int64 *
scm_s64vector_writable_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
float *
scm_f32vector_writable_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
double *
scm_f64vector_writable_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
float *
scm_c32vector_writable_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
- C Function:
double *
scm_c64vector_writable_elements (SCM vec, scm_t_array_handle *handle, size_t *lenp, ssize_t *incp)
¶
Like scm_vector_writable_elements
(see Vector Accessing from C),
but returns a pointer to the elements of a uniform numeric vector of the
indicated kind.