ScriptableObject
The base of every JavaScript object. It keeps the properties, the prototype and the parent scope, and implements the property algorithm the whole language rests on.
Upstream also has a reflection layer here (defineClass, the @JS* annotation scan, and the Method-based defineProperty overloads) that binds Java classes into script. That is LiveConnect and this port does not have it, so those members are gone.
Inheritors
Types
A property descriptor in the form the engine works with, rather than as a script object. Every field holds Scriptable.NOT_FOUND when the descriptor does not mention it.
A getter that gets handed the object it is reading from.
A setter that gets handed the object it is writing to.
Properties
Functions
True for an object that has to pretend it is undefined, which only NativeWith does.
Same as above for a built-in method, which does not get a prototype property.
Defines a property whose value comes from a lambda that needs nothing but itself.
Defines a method backed by a Kotlin lambda.
A value another part of the engine parked on this object under key.
Converts this object to a primitive, guided by hint.
Backs the instanceof operator.
Seals the object, so no property can be added, removed or changed.
Attaches data that lives outside the engine, or detaches it with null.