original_string: private function processMetadataDrivers()
  	{
  		$builder = $this->getContainerBuilder();
  
  		// At the moment, only Docblock annotations are supported, XML and YAML are not.		
  		$annotationReader = $builder->addDefinition($this->prefix('metadata.annotationReader'))
  			->setClass(AnnotationReader::class);
  
  		$cachedReader = $builder->addDefinition($this->prefix('metadata.cachedReader'))
  			->setClass(CachedReader::class)
  			->setFactory(CachedReader::class, [
  				'@' . $this->prefix('metadata.annotationReader'),
  				'@' . $this->prefix('cache.annotations'),
  				$this->debugMode
  			]);
  
  		$driverChain = $builder->addDefinition($this->prefix('metadata.driver'))
  			->setClass(MappingDriverChain::class);
  
  		foreach ($this->config['metadata'] as $namespace => $directory) {
  			$driver = $builder->addDefinition($this->prefix('driver.' . $this->createServiceName($namespace)))
  				->setClass(MappingDriver::class)
  				->setFactory(AnnotationDriver::class, [
  					'@' . $this->prefix('metadata.cachedReader'),
  					$directory
  				]);
  			$driverChain->addSetup('$service->addDriver(?, ?)', [
  				'@' . $this->prefix('driver.' . $this->createServiceName($namespace)), $namespace
  			]);
  		}
  	}
code: private function processMetadataDrivers()
  	{
  		$builder = $this->getContainerBuilder();
  
  		// At the moment, only Docblock annotations are supported, XML and YAML are not.		
  		$annotationReader = $builder->addDefinition($this->prefix('metadata.annotationReader'))
  			->setClass(AnnotationReader::class);
  
  		$cachedReader = $builder->addDefinition($this->prefix('metadata.cachedReader'))
  			->setClass(CachedReader::class)
  			->setFactory(CachedReader::class, [
  				'@' . $this->prefix('metadata.annotationReader'),
  				'@' . $this->prefix('cache.annotations'),
  				$this->debugMode
  			]);
  
  		$driverChain = $builder->addDefinition($this->prefix('metadata.driver'))
  			->setClass(MappingDriverChain::class);
  
  		foreach ($this->config['metadata'] as $namespace => $directory) {
  			$driver = $builder->addDefinition($this->prefix('driver.' . $this->createServiceName($namespace)))
  				->setClass(MappingDriver::class)
  				->setFactory(AnnotationDriver::class, [
  					'@' . $this->prefix('metadata.cachedReader'),
  					$directory
  				]);
  			$driverChain->addSetup('$service->addDriver(?, ?)', [
  				'@' . $this->prefix('driver.' . $this->createServiceName($namespace)), $namespace
  			]);
  		}
  	}
code_tokens: private function processMetadataDrivers ( ) { $ builder = $ this -> getContainerBuilder ( ) ; // At the moment, only Docblock annotations are supported, XML and YAML are not.		 $ annotationReader = $ builder -> addDefinition ( $ this -> prefix ( 'metadata.annotationReader' ) ) -> setClass ( AnnotationReader :: class ) ; $ cachedReader = $ builder -> addDefinition ( $ this -> prefix ( 'metadata.cachedReader' ) ) -> setClass ( CachedReader :: class ) -> setFactory ( CachedReader :: class , [ '@' . $ this -> prefix ( 'metadata.annotationReader' ) , '@' . $ this -> prefix ( 'cache.annotations' ) , $ this -> debugMode ] ) ; $ driverChain = $ builder -> addDefinition ( $ this -> prefix ( 'metadata.driver' ) ) -> setClass ( MappingDriverChain :: class ) ; foreach ( $ this -> config [ 'metadata' ] as $ namespace => $ directory ) { $ driver = $ builder -> addDefinition ( $ this -> prefix ( 'driver.' . $ this -> createServiceName ( $ namespace ) ) ) -> setClass ( MappingDriver :: class ) -> setFactory ( AnnotationDriver :: class , [ '@' . $ this -> prefix ( 'metadata.cachedReader' ) , $ directory ] ) ; $ driverChain -> addSetup ( '$service->addDriver(?, ?)' , [ '@' . $ this -> prefix ( 'driver.' . $ this -> createServiceName ( $ namespace ) ) , $ namespace ] ) ; } }
docstring: Registers metadata drivers.
docstring_tokens: Registers metadata drivers .