code: def read_all(self):
          
          result = self._data[self._position:]
          self._position = None  # ensure no subsequent read()
          return result
docs: Read all remaining data in the packet.
  
          (Subsequent read() will return errors.)