The Byte structure
Bytes are 8-bit integers as provided by the Word8 structure, but with additional operations over the extended ASCII characters.
Synopsis
signature BYTE
structure Byte : BYTE
Interface
val byteToChar : Word8.word -> char
val charToByte : char -> Word8.word
val bytesToString : Word8Vector.vector -> string
val stringToBytes : string -> Word8Vector.vector
val unpackStringVec : (Word8Vector.vector * int * int option) -> string
val unpackString : (Word8Array.array * int * int option) -> string
val packString : (Word8Array.array * int * substring) -> unit
Description
-
byteToChar i -
returns the character whose code is i.
-
charToByte c -
returns an 8-bit word holding the code for the character c.
-
bytesToString vstringToBytes s -
convert between a vector of character codes and the corresponding string.
Implementation note:
In some implementations, these may be constant-time operations.
-
unpackStringVec (vec, i, opt) -
when opt is NONE, unpackStringVec returns the string consisting of characters whose codes are held in
vec[i..(length vec)-1]. Raises Subscript if i < 0 or i >lengthvec. When opt isSOME n, unpackStringVec returns the string consisting of characters whose codes are held invec[i..i+n-1]. Raises Subscript if i < 0 or n < 0 or i+n >lengthvec.
-
unpackString (arr, i, opt) -
Identical to
unpackStringVec, but where arr is a Word8Array.array.
-
packString (arr, i, s) -
puts the substring s into the array arr at offset i. Raises Subscript if i < 0 or (
sizes) + i >lengtharr.
See Also
WORD, Word8, Word8Vector, Word8Array, Char, String, Substring