/** * A Notepad object stores each procedure's "local" variables. * @class Notepad * @memberof jibo.flow * @param {jibo.flow.Context} context The context that is referencing the notepad. * @param {any} params The input parameters to the procedure, available as 'notepad.params' in the procedure. * @param {jibo.flow.Environment} environment The global environment of the executing flow. */ /** * A hook so that non-Flow activities (i.e. Behaviors) can set the activity's output transition. * Available as 'notepad.setTransition'. * @param {string} transition */ /** * A Result object is provided during procedure execution to * hold any outputs the procedure needs to return to the caller. * It can be filled in as needed by the procedure (e.g. "result.foo = 42"). * The Result object is made available to the caller throw the invoking Flow.Subflow activity * (via the "subflow_result_object" parameter of the "getTransition" parameter). * A procedure's Flow.End activity will always set result.transition. * @class Result * @memberof jibo.flow */ /** * A snapshot of all the relevant info in an exception. This is available as `notepad.FlowEnv.lastException` after an exception occurs. * @class FlowExceptionInfo * @property {string} name - The name of the exception, e.g. "~InteractionError.noMatch" * @property {jibo.flow.ActivityImplementation} activity - The activity in which the exception occurred. Equivalent to `stackTrace[0].activity`. * @property {jibo.flow.Procedure} procedure - The procedure in which the exception occurred. Equivalent to `stackTrace[0].procedure`. * @property {Array} stackTrace - An array of objects corresponding to the stack at the time the exception occurred, each having a procedure and activity property. The first element in the array is the inner most frame (ie. where the exception occurred). * @property {any} payload - An object containing further information about the exception. This may be provided by a `Flow.Throw` activity, or in the case of JS exceptions, is the information passed via the parameter to a JS `catch()` statement. * @memberof jibo.flow */