/**
  * Sets the child Scope for this Directive.
  *
  * Sets the child Scope for this Directive and also
  * sets the $childScope->setParentDirective($this).
  *
  * @param Scope $childScope
  * @return $this
  */
 public function setChildScope(Scope $childScope)
 {
     $this->childScope = $childScope;
     if ($childScope->getParentDirective() !== $this) {
         $childScope->setParentDirective($this);
     }
     return $this;
 }