vector | System Class |
Any one-dimensional array is a vector.
The type vector is a subtype of type array; for all types x
, (vector x) is the same as (array x (*)).
The type (vector t), the type string, and the type bit-vector are disjoint subtypes of type vector.
Specializing.
(vector [{element-type | *} [{size | *}]]) |
size — a non-negative fixnum.
element-type — a type specifier.
This denotes the set of specialized vectors whose element type and dimension match the specified values. Specifically:
If element-type is the symbol *, vectors are not excluded on the basis of their element type. Otherwise, only those vectors are included whose actual array element type is the result of upgrading element-type; see Section 15.1.2.1 (Array Upgrading).
If a size is specified, the set includes only those vectors whose only dimension is size. If the symbol * is specified instead of a size, the set is not restricted on the basis of dimension.
Section 15.1.2.2 (Required Kinds of Specialized Arrays), Section 2.4.8.3 (Sharpsign Left-Parenthesis), Section 22.1.3.7 (Printing Other Vectors), Section 2.4.8.12 (Sharpsign A)
The type (vector e s)
is equivalent to the type (array e (s))
.
The type (vector bit)
has the name bit-vector.
The union of all types (vector C)
, where C is any subtype of character, has the name string.
(vector *) refers to all vectors regardless of element type, (vector type-specifier) refers only to those vectors that can result from giving type-specifier as the :element-type argument to make-array.