Unicode Support
Subapplication that contains a modern String model and utilities that implement the
Unicode StandardsClass Methods
isAscii:
Answers true if all bytes in @aByteObject are within the ASCII range,
false otherwise.
0 <= byte < 128
Arguments:
aByteObject - <Utf8, ByteArray, String> object with byte shape
Answers:
<Boolean>
Raises:
<Exception>
isValidUtf16:endian:
Answer true if @aByteObject has bytes that make up valid UTF-16,
false otherwise.
Arguments:
aByteOrWordObject - objects with byte or word shape
endian - <Integer> @see UnicodeEndian pool elements
<UndefinedObject> Will be platform endian: TypePlatformEndian
Answers:
<Boolean>
Raises:
<Exception>
isValidUtf32:endian:
Answer true if @aByteObject has bytes that make up valid UTF-32,
false otherwise.
Arguments:
aByteOrLongObject - objects with byte or long shape
endian - <Integer> @see UnicodeEndian pool elements
<UndefinedObject> Will be platform endian: TypePlatformEndian
Answers:
<Boolean>
Raises:
<Exception>
isValidUtf8:
Answer true if @aByteObject has bytes that make up valid UTF-8,
false otherwise.
Arguments:
aByteObject - <Utf8, ByteArray, String> object with byte shape
Answers:
<Boolean>
Raises:
<Exception>
unicodeVersion
Answers the version of the implemented Unicode Standard
as a 3 element array (major, minor, update).
More information can be found here:
https://unicode.org/versions/
Example:
self assert: [UnicodeSupport unicodeVersion = #(14 0 0)]
Answers:
<Array> of <Integer> major, minor, update
Instance Methods
None
Last modified date: 01/19/2023