More stuff for working with strings and bytes!

- "\x" escape sequence to put byte values in strings: "\x34"
- String.byteAt(index) gets value of byte in string.
- String.bytes returns a raw sequence of bytes for a string.
- String.codePointAt(index) gets the code point at an offset as a raw number.
This commit is contained in:
Bob Nystrom
2015-03-27 20:44:07 -07:00
parent 7d45dda383
commit 72c38a59ce
36 changed files with 402 additions and 15 deletions
+13 -1
View File
@@ -92,7 +92,19 @@ class Sequence {
}
}
class String is Sequence {}
class String is Sequence {
bytes { new StringByteSequence(this) }
}
class StringByteSequence is Sequence {
new(string) {
_string = string
}
[index] { _string.byteAt(index) }
iterate(iterator) { _string.iterateByte_(iterator) }
iteratorValue(iterator) { _string.byteAt(iterator) }
}
class List is Sequence {
addAll(other) {