/**
  * Constructs a new source parser.
  *
  * @param \PDepend\Source\Tokenizer\Tokenizer $tokenizer
  * @param \PDepend\Source\Builder\Builder     $builder
  * @param \PDepend\Util\Cache\CacheDriver     $cache
  */
 public function __construct(Tokenizer $tokenizer, Builder $builder, CacheDriver $cache)
 {
     $this->tokenizer = $tokenizer;
     $this->builder = $builder;
     $this->cache = $cache;
     $this->idBuilder = new \PDepend\Util\IdBuilder();
     $this->tokenStack = new \PDepend\Source\Parser\TokenStack();
     $this->useSymbolTable = new \PDepend\Source\Parser\SymbolTable();
     $this->builder->setCache($this->cache);
 }