Constructs a new ScriptString out of a UTF-8 D string
Returns the actual D string contained
name property
getters property
setters property
prototype property
prototype property (setter)
This property provides direct access to the dictionary
Add a getter. Getters should be added to a constructor function's "prototype" field
Add a setter. Setters should be added to a constructor function's "prototype" field
Looks up a field through the prototype chain. Note that this does not call any getters because it is not possible to pass an Environment to opIndex.
Shorthand for lookupField.
Assigns a field to the current object. This does not call any setters.
Determines if there is a getter for a given property
Determines if there is a setter for a given property
Find a getter in the prototype chain
Find a setter in the prototype chain
Shorthand for assignField
Returns a property descriptor without searching the prototype chain. The object returned is an object possibly containing get, set, or value fields.
Tests whether or not a property or field exists in this object without searching the __proto__ chain.
If a native object was stored inside this ScriptObject, it can be retrieved with this function. Note that one must always check that the return value isn't null because all functions can be called with invalid "this" objects using functionName.call.
Native object can also be written because this is how binding works. Constructors receive a premade ScriptObject as the "this" with the name and prototype already set. Native D constructor functions have to set this property.
Returns a string with JSON like formatting representing the object's key-value pairs as well as any nested objects. In the future this will be replaced and an explicit function call will be required to print this detailed information.
The dictionary of key-value pairs
The lookup table for getters
The lookup table for setters
Encapsulates a string. It is stored internally as UTF-8 and treated as such except during iteration, in which dchar code points are the iteration element.