original_string: public function execute($stdIn = null)
      {
          $stdOut = fopen('php://temp', 'r');
          $stdErr = fopen('php://temp', 'r');
  
          $descriptorSpec = array(
             0 => array("pipe", "r"), // stdin is a pipe that the child will read from
             1 => $stdOut,            // stdout is a temp file that the child will write to
             2 => $stdErr             // stderr is a temp file that the child will write to
          );
          $pipes   = array();
          $process = proc_open(
              $this->getCmd(),
              $descriptorSpec,
              $pipes,
              $this->getCwd(),
              $this->getEnv()
          );
  
          if (is_resource($process)) {
              if ($stdIn !== null) {
                  fwrite($pipes[0], (string)$stdIn);
              }
              fclose($pipes[0]);
              $returnCode = proc_close($process);
              return new CallResult($this, $stdOut, $stdErr, $returnCode);
          } else {
              fclose($stdOut);
              fclose($stdErr);
              throw new \RuntimeException(sprintf('Cannot execute "%s"', $this->getCmd()));
          }
      }
code: public function execute($stdIn = null)
      {
          $stdOut = fopen('php://temp', 'r');
          $stdErr = fopen('php://temp', 'r');
  
          $descriptorSpec = array(
             0 => array("pipe", "r"), // stdin is a pipe that the child will read from
             1 => $stdOut,            // stdout is a temp file that the child will write to
             2 => $stdErr             // stderr is a temp file that the child will write to
          );
          $pipes   = array();
          $process = proc_open(
              $this->getCmd(),
              $descriptorSpec,
              $pipes,
              $this->getCwd(),
              $this->getEnv()
          );
  
          if (is_resource($process)) {
              if ($stdIn !== null) {
                  fwrite($pipes[0], (string)$stdIn);
              }
              fclose($pipes[0]);
              $returnCode = proc_close($process);
              return new CallResult($this, $stdOut, $stdErr, $returnCode);
          } else {
              fclose($stdOut);
              fclose($stdErr);
              throw new \RuntimeException(sprintf('Cannot execute "%s"', $this->getCmd()));
          }
      }
code_tokens: public function execute ( $ stdIn = null ) { $ stdOut = fopen ( 'php://temp' , 'r' ) ; $ stdErr = fopen ( 'php://temp' , 'r' ) ; $ descriptorSpec = array ( 0 => array ( "pipe" , "r" ) , // stdin is a pipe that the child will read from 1 => $ stdOut , // stdout is a temp file that the child will write to 2 => $ stdErr // stderr is a temp file that the child will write to ) ; $ pipes = array ( ) ; $ process = proc_open ( $ this -> getCmd ( ) , $ descriptorSpec , $ pipes , $ this -> getCwd ( ) , $ this -> getEnv ( ) ) ; if ( is_resource ( $ process ) ) { if ( $ stdIn !== null ) { fwrite ( $ pipes [ 0 ] , ( string ) $ stdIn ) ; } fclose ( $ pipes [ 0 ] ) ; $ returnCode = proc_close ( $ process ) ; return new CallResult ( $ this , $ stdOut , $ stdErr , $ returnCode ) ; } else { fclose ( $ stdOut ) ; fclose ( $ stdErr ) ; throw new \ RuntimeException ( sprintf ( 'Cannot execute "%s"' , $ this -> getCmd ( ) ) ) ; } }
docstring: Executes the call using the preconfigured command
  
  @param   string|null  $stdIn     Content that will be piped to the command
  @return  CallResult
  @throws  \RuntimeException       If the command cannot be executed
docstring_tokens: Executes the call using the preconfigured command