Implement the `String.fromCodePoint(_)` primitive that creates a string from a Unicode code point, with validation for integer range 0–0x10ffff. Extract inline UTF-8 encoding logic from `readUnicodeEscape` in the compiler into new `wrenUtf8NumBytes` and `wrenUtf8Encode` utility functions in `wren_utils`, and add `wrenStringFromCodePoint` helper in `wren_value`. Update documentation for core classes to add "Methods" and "Static Methods" section headers, and include `String.fromCodePoint` docs with example. Add a test file `from_code_point.wren` covering various code points.
505 B
505 B
^title Class Class ^category core
Methods
name
The name of the class.
supertype
The superclass of this class.
:::dart
class Crustacean {}
class Crab is Crustacean {}
IO.print(Crab.supertype) // "Crustacean"
A class with no explicit superclass implicitly inherits Object:
:::dart
IO.print(Crustacean.supertype) // "Object"
Object forms the root of the class hierarchy and has no supertype:
:::dart
IO.print(Object.supertype) // "null"