An optional array of classes defining the types of parameters sent to listeners.
Implementation public function get valueClasses():Array public function set valueClasses(value:Array):void
Throws
ArgumentError — ArgumentError: Invalid valueClasses argument: item at index should be a Class but was not.
Constructor Detail
MonoSignal
()
Constructor
public function MonoSignal(... valueClasses)
Creates a MonoSignal instance to dispatch value objects.
Parameters
... valueClasses — Any number of class references that enable type checks in dispatch().
For example, new Signal(String, uint)
would allow: signal.dispatch("the Answer", 42)
but not: signal.dispatch(true, 42.5)
nor: signal.dispatch()
NOTE: Subclasses cannot call super.apply(null, valueClasses),
but this constructor has logic to support super(valueClasses).
listener:Function — A function with arguments
that matches the value classes dispatched by the signal.
If value classes are not specified (e.g. via Signal constructor), dispatch() can be called without arguments.
Returns
ISlot — a ISlot, which contains the Function passed as the parameter
Throws
flash.errors:IllegalOperationError — IllegalOperationError: You cannot add or addOnce with a listener already added, remove the current listener first.
ArgumentError — ArgumentError: Given listener is null.
Subscribes a one-time listener for this signal.
The signal will remove the listener automatically the first time it is called,
after the dispatch to all listeners is complete.
Parameters
listener:Function — A function with arguments
that matches the value classes dispatched by the signal.
If value classes are not specified (e.g. via Signal constructor), dispatch() can be called without arguments.
Returns
ISlot — a ISlot, which contains the Function passed as the parameter
Throws
flash.errors:IllegalOperationError — IllegalOperationError: You cannot add or addOnce with a listener already added, remove the current listener first.
ArgumentError — ArgumentError: Given listener is null.
dispatch
()
method
public function dispatch(... valueObjects):void
Dispatches an object to listeners.
Parameters
... valueObjects — Any number of parameters to send to listeners. Will be type-checked against valueClasses.
Throws
ArgumentError — ArgumentError: Incorrect number of arguments.
ArgumentError — ArgumentError: Value object is not an instance of the appropriate valueClasses Class.
registerListener
()
method
protected function registerListener(listener:Function, once:Boolean = false):ISlot