class skbio.workflow.requires(option=None, values=<skbio.workflow.Exists object>, state=None)[source]

Decorator that executes a function if requirements are met


option : any Hashable object

An option that is required for the decorated method to execute. This option will be looked up within the containing Workflow``s' ``options.

values : object

A required value. This defaults to anything indicating that the only requirement is that the option exists. It can be useful to specify not_none which indicates that the requirement is satisfied if the option exists and it holds a value that is not None. Values also supports iterables or singular values.

state : Function

A requirement on workflow state. This must be a function that accepts a single argument, and returns True to indicate the requirement is satisfied, or False to indicate the requirement is not satisfied. This method will be passed the containing Workflow``s' ``state member variable.


__call__(func) Wrap a function