class skbio.workflow.Workflow(state, short_circuit=True, debug=False, options=None, **kwargs)[source]

Arbitrary workflow support structure

Methods that are considered to be directly part of the workflow must be decorated with method. The workflow methods offer a mechanism to logically group functionality together, and are free to make subsequent calls to other methods.

All methods of a subclass of Workflow (those with and without the method decoration) can take advantage of the requires decorator to specify any option or state requirements for the decorated function.

  • state (object) – State can be anything or nothing. This is dependent on the workflow as in some cases, it is useful to preallocate state while in other workflows state may be ignored.

  • short_circuit (bool) – if True, enables ignoring function methods when a given item has failed

  • debug (bool) – Enable debug mode

  • options (dict) – runtime options, {‘option’:values}, that the requires decorator can interrogate.

  • kwargs (dict) – Additional arguments will be added as member variables to self. This is handy if additional contextual information is needed by a workflow method (e.g., a lookup table).


__call__(iter_[, success_callback, …])

Operate on all the data


Return hash(self).



Initialize state