/**
* Creates the descriptors needed by the proc_open.
*/
private function getDescriptors(): array
{ if ($this->input instanceof \Iterator
) { $this->input->
rewind();
} if ('\\' === \DIRECTORY_SEPARATOR
) { $this->processPipes =
new WindowsPipes($this->input, !
$this->outputDisabled ||
$this->hasCallback
);
} else { $this->processPipes =
new UnixPipes($this->
isTty(),
$this->
isPty(),
$this->input, !
$this->outputDisabled ||
$this->hasCallback
);
} return $this->processPipes->
getDescriptors();
} /**
* Builds up the callback used by wait().
*
* The callbacks adds all occurred output to the specific buffer and calls
* the user callback (if present) with the received output.
*
* @param callable|null $callback The user defined PHP callback
*/