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)
Compare this object to the specified for equality. This
method may be accessed via the == and != shortcut operators.
If not overridden the default implementation compares for
reference equality using the === operator. If this method
is overridden, then hash() must also be overridden such that
any two objects which return true for equals() must return
the same value for hash(). This method must accept null
and
return false.
Return a unique hashcode for this object. If a class overrides hash() then it must ensure if equals() returns true for any two objects then they have same hash code.
Convenience method to respond to a DELETE request. Default implementation returns a 501 Not implemented error.
Service an HTTP GET request for this bundle file
Convenience method to respond to a HEAD request. Default implementation returns a 501 Not implemented error.
Convenience method to respond to a OPTIONS request. Default implementation returns a 501 Not implemented error.
Convenience method to respond to a POST request. Default implementation returns a 501 Not implemented error.
Convenience method to respond to a PUT request. Default implementation returns a 501 Not implemented error.
Convenience method to respond to a TRACE request. Default implementation returns a 501 Not implemented error.
The WebReq instance for this current web request. Raise an exception if the current actor thread is not serving a web request.
The WebRes instance for this current web request. Raise an exception if the current actor thread is not serving a web request.
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.
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
makeStatic
packStatic
toGiven a set of pods return a list of CSS files that form a complete Fantom application:
Static
toGiven a set of pods return a list of JavaScript files that form a complete Fantom application:
Static
toReturn the required sys etc files:
Static
toStatic
toStatic
toCompile the mime type database into a Javascript file "mime.js"
Static
toStatic
toStatic
toStatic
toCompile a list of pod JavaScript files into a single unified source map file. The list of files passed to this method should match exactly the list of files used to create the corresponding JavaScript FilePack. If the file is the standard pod JS file, then we will include an offset version of "{pod}.js.map" generated by the JavaScript compiler. Otherwise if the file is another JavaScript file (such as units.js) then we just add the appropiate offset.
The sourceRoot
option may be passed in to replace
"/dev/{podName}" as the root URI used to fetch source files
from the server.
Static
toCompile the timezone database into a JavaScript file "tz.js"
Static
toCompile the unit database into a JavaScript file "unit.js"
FilePack is an in-memory cache of multiple text files to service static resources via HTTP. It takes one or more text files and creates one compound file. The result is stored in RAM using GZIP compression. Or you can use the pack utility method to store the result to your own files/buffers.
The onGet method is used to service GET requests for the bundle. The Content-Type header is set based on file extension of files bundled. It also implictly supports ETag/Last-Modified for 304 optimization.
The core factory is the makeFiles constructor. A suite of utility methods is provided for standard bundling of Fantom JavaScrit and CSS files.