function enhance($deps = null, $action = null)
{
if ($deps) {
if ($this->prerequisites instanceof \Iterator) {
$p = new \AppendIterator();
$p->append($this->prerequisites);
$p->append(itertools\to_iterator($deps));
$this->prerequisites = $p;
} else {
$this->prerequisites = itertools\to_iterator($deps);
}
}
if (is_callable($action)) {
$this->actions->push($action);
}
}