/**
  * Get argument by name.
  *
  * @param string $name
  *
  * @return mixed
  */
 public function get($name)
 {
     if (!$this->definition->hasArgument($name)) {
         throw new InvalidArgumentException(sprintf('Argument named "%s" is undefined.', $name));
     }
     if (isset($this->arguments[$name])) {
         return $this->arguments[$name];
     }
     return $this->definition->getArgument($name)->getDefault();
 }
 /**
  * Add arguments.
  *
  * @param array $arguments
  */
 public function addArguments(array $arguments)
 {
     foreach ($arguments as $index => $arg) {
         $argument = $this->definition->getArgument($index);
         $this->argument->set($argument->getName(), $arg);
     }
 }