Class Profiler

extends Object
Simplistic profiler based on bytecode invocation counts.

Class summary


install profile-all-tasks/bool -> none
Installs the profiler.
start -> none
Starts the profiler.
stop -> none
Stops the profiler.
report title/string --cutoff/int= -> none
Reports the result of the profiler with the title.
encode title/string cutoff/int -> ByteArray
Encodes the result of the profiler with the title.
uninstall -> none
Uninstalls the profiler.
do [block] -> any
Calls the block while the profiler is active.

Statics

do [block] -> any
Calls the block while the profiler is active.

encode title/string cutoff/int -> ByteArray
Encodes the result of the profiler with the title.
Only includes results above the cutoff per mille.

install profile-all-tasks/bool -> none
Installs the profiler.
Profiles all tasks if profile-all-tasks is true; otherwise only profiles the current task.

report title/string --cutoff/int=10 -> none
Reports the result of the profiler with the title.
Only includes results above the cutoff per mille.

start -> none
Starts the profiler.

stop -> none
Stops the profiler.

uninstall -> none
Uninstalls the profiler.

Methods

operator == other/any -> bool
Whether this object is equal to the other.
By default, identical is used for equality.
Inheritance
Classes overwrite this operator to get an equality specific to their needs. Equality operators often compare the type and field contents. For example:

class Pin:
  number/int

  constructor .number:

  operator == other:
    if other is not Pin: return false
    return number == other.number
A class doesn't have to follow the above format, but it must keep the operator in sync with any hash-code method. That is, if a class has a hash-code member, then the equality and hash-code must agree. If two instances are equal (a == b), then their hash codes must also be equal (a.hash-code == b.hash-code).

Stringifies this object.
Inheritance
Objects that need a human-friendly string representation should overwrite this method. The default string is based on the internal class-ID.