public function context(string $prefix, $invoker) {

    if (!$invoker instanceof \Closure) {
      throw new \InvalidArgumentException('Context invoker must be instance of Closure.');
    }

    $this->currentContext->addSubContext($prefix, $invoker);

    return $this;
  }