Abstract
Return a negative integer, zero, or a positive integer if this object is less than, equal to, or greater than the specified object:
this < that => <0
this == that => 0
this > that => >0
This method may also be accessed via the <
<=
<=>
>=
and >
shortcut operators. If not overridden the default
implementation compares the toStr
representations. Also see docLang.
Examples:
3.compare(8) => -1
8.compare(3) => 1
8.compare(8) => 0
3 <=> 8 => -1 // shortcut for 3.compare(8)
Services are required to implement equality by reference.
Install this service into the VM's service registry. If already installed, do nothing. Return this.
Is the service in the installed state. Note this method requires accessing a global hash table, so it should not be heavily polled in a concurrent environment.
Is the service in the running state. Note this method requires accessing a global hash table, so it should not be heavily polled in a concurrent environment.
Start this service. If not installed, this method automatically calls install. If already running, do nothing. Return this.
Stop this service. If not running, do nothing. Return this.
Get an immutable representation of this instance or throw NotImmutableErr if this object cannot be represented as an immutable:
Return a string representation of this object.
Trap a dynamic call for handling. Dynamic calls are invoked with the -> shortcut operator:
a->x a.trap("x", null)
a->x() a.trap("x", null)
a->x = b a.trap("x", [b])
a->x(b) a.trap("x", [b])
a->x(b, c) a.trap("x", [b, c])
The default implementation provided by Obj attempts to use reflection. If name maps to a method, it is invoked with the specified arguments. If name maps to a field and args.size is zero, get the field. If name maps to a field and args.size is one, set the field and return args[0]. Otherwise throw UnknownSlotErr.
Uninstall this service from the VM's service registry. If the service is running, this method automatically calls stop. If not installed, do nothing. Return this.
This method called whenever an it-block is applied to an
object. The default implementation calls the function with this
,
and then returns this
.
Static
echoWrite x.toStr
to standard output followed by newline. If x
is null then print "null". If no argument is provided then
print an empty line.
Optional
x: JsObjStatic
findStatic
findStatic
list
Services are used to publish functionality in a VM for use by other software components. The service registry for the VM is keyed by public types each service implements.
The following table illustrates the service lifecycle:
While the service is installed, it may be looked up in the registry via find and findAll. The running state is used to invoke the onStart | onStart and onStop | onStop callbacks which gives the service a chance to setup/shutdown its actors and associated resources.