public function __construct(Logger $logger, $srcDir, TwigEngine $twigEngine, Reader $reader, $sourceNamespace, array $targets = [])
 {
     parent::__construct($logger, $sourceNamespace, $targets);
     $this->srcDir = $srcDir;
     $this->namespaceDir = $this->srcDir . '/' . str_replace('\\', '/', $this->namespace);
     $this->twigEngine = $twigEngine;
     $this->reader = $reader;
 }
 public function __construct(Logger $logger, $srcDir, TwigEngine $twigEngine, Reader $reader, $sourceNamespace, $targets = [], $localClassName)
 {
     parent::__construct($logger, $sourceNamespace, $targets);
     $this->srcDir = $srcDir;
     $this->twigEngine = $twigEngine;
     $this->reader = $reader;
     $this->localClassName = Standard::normalizeClassName($localClassName);
     $this->className = $this->namespace . '\\' . $this->localClassName;
     $slashPos = strrpos($this->localClassName, '\\');
     if ($slashPos === false) {
         $this->localNamespace = '';
     } else {
         $this->localNamespace = substr($this->localClassName, 0, $slashPos);
     }
     $this->loadClass();
     $this->loadProperties();
     $this->checkPropertiesTargets();
 }