Previous: Variable-Length Strings, Up: Strings   [Contents][Index]


6.11 Byte Vectors

MIT/GNU Scheme implements strings as packed vectors of 8-bit ISO-8859-1 bytes. Most of the string operations, such as string-ref, coerce these 8-bit codes into character objects. However, some lower-level operations are made available for use.

procedure: vector-8b-ref string k

Returns character k of string as an ISO-8859-1 code. K must be a valid index of string.

(vector-8b-ref "abcde" 2)               ⇒  99 ;c
procedure: vector-8b-set! string k code

Stores code in element k of string and returns an unspecified value. K must be a valid index of string, and code must be a valid ISO-8859-1 code.

procedure: vector-8b-fill! string start end code

Stores code in elements start (inclusive) to end (exclusive) of string and returns an unspecified value. Code must be a valid ISO-8859-1 code.

procedure: vector-8b-find-next-char string start end code
procedure: vector-8b-find-next-char-ci string start end code

Returns the index of the first occurrence of code in the given substring; returns #f if code does not appear. The index returned is relative to the entire string, not just the substring. Code must be a valid ISO-8859-1 code.

vector-8b-find-next-char-ci doesn’t distinguish uppercase and lowercase letters.

procedure: vector-8b-find-previous-char string start end code
procedure: vector-8b-find-previous-char-ci string start end code

Returns the index of the last occurrence of code in the given substring; returns #f if code does not appear. The index returned is relative to the entire string, not just the substring. Code must be a valid ISO-8859-1 code.

vector-8b-find-previous-char-ci doesn’t distinguish uppercase and lowercase letters.


Previous: Variable-Length Strings, Up: Strings   [Contents][Index]