code: def parse_partial(self, text):
          '''Parse the longest possible prefix of a given string.
          Return a tuple of the result value and the rest of the string.
          If failed, raise a ParseError. '''
          if not isinstance(text, str):
              raise TypeError(
                  'Can only parsing string but got {!r}'.format(text))
          res = self(text, 0)
          if res.status:
              return (res.value, text[res.index:])
          else:
              raise ParseError(res.expected, text, res.indexf parse_partial(self, text):
          '''Parse the longest possible prefix of a given string.
          Return a tuple of the result value and the rest of the string.
          If failed, raise a ParseError. '''
          if not isinstance(text, str):
              raise TypeError(
                  'Can only parsing string but got {!r}'.format(text))
          res = self(text, 0)
          if res.status:
              return (res.value, text[res.index:])
          else:
              raise ParseError(res.expected, text, res.index)
docs: Parse the longest possible prefix of a given string.
          Return a tuple of the result value and the rest of the string.
          If failed, raise a ParseError.