class_docstr: Input that is send through a pipe.
  This is useful if we want to send the input programmatically into the
  application. Mostly useful for unit testing.
  
  Usage::
  
      with PosixPipeInput.create() as input:
          input.send_text('inputdata')
class_docstr_tok: ["Input","that","is","send","through","a","pipe",".","This","is","useful","if","we","want","to","send","the","input","programmatically","into","the","application",".","Mostly","useful","for","unit","testing",".","Usage",":",":","with","PosixPipeInput.create","(",")","as","input",":","input.send_text","(","'inputdata","'",")"]
code: def __init__(self, _pipe: _Pipe, _text: str = "") -> None:
      # Private constructor. Users should use the public `.create()` method.
      self.pipe = _pipe
  
      class Stdin:
          encoding = "utf-8"
  
          def isatty(stdin) -> bool:
              return True
  
          def fileno(stdin) -> int:
              return self.pipe.read_fd
  
      super().__init__(cast(TextIO, Stdin()))
      self.send_text(_text)
  
      # Identifier for every PipeInput for the hash.
      self.__class__._id += 1
      self._id = self.__class__._id
  
imports: from __future__ import annotations
  import sys
  import os
  from contextlib import contextmanager
  from typing import ContextManager, Iterator, TextIO, cast
  from ..utils import DummyContext
  from .base import PipeInput
  from .vt100 import Vt100Input
label_desc: Use image node_id 1 to create a new PosixPipeInput object from inherited base classes: Vt100Input, PipeInput with example: obj = PosixPipeInput(_pipe, _text)