original_string: public function replaceArgument($index, $argument)
      {
          if (0 === count($this->arguments)) {
              throw new OutOfBoundsException('Cannot replace arguments if none have been configured yet.');
          }
  
          if ($index < 0 || $index > count($this->arguments) - 1) {
              throw new OutOfBoundsException(sprintf('The index "%d" is not in the range [0, %d].', $index, count($this->arguments) - 1));
          }
  
          $this->arguments[$index] = $argument;
  
          return $this;
      }
code: public function replaceArgument($index, $argument)
      {
          if (0 === count($this->arguments)) {
              throw new OutOfBoundsException('Cannot replace arguments if none have been configured yet.');
          }
  
          if ($index < 0 || $index > count($this->arguments) - 1) {
              throw new OutOfBoundsException(sprintf('The index "%d" is not in the range [0, %d].', $index, count($this->arguments) - 1));
          }
  
          $this->arguments[$index] = $argument;
  
          return $this;
      }
code_tokens: public function replaceArgument ( $ index , $ argument ) { if ( 0 === count ( $ this -> arguments ) ) { throw new OutOfBoundsException ( 'Cannot replace arguments if none have been configured yet.' ) ; } if ( $ index < 0 || $ index > count ( $ this -> arguments ) - 1 ) { throw new OutOfBoundsException ( sprintf ( 'The index "%d" is not in the range [0, %d].' , $ index , count ( $ this -> arguments ) - 1 ) ) ; } $ this -> arguments [ $ index ] = $ argument ; return $ this ; }
docstring: Sets a specific argument.
  
  @param int   $index
  @param mixed $argument
  
  @return $this
  
  @throws OutOfBoundsException When the replaced argument does not exist
docstring_tokens: Sets a specific argument .