code: def read_arg(src, c):
      
      content = [c]
      while src.hasNext():
          if src.peek() in ARG_END_TOKENS:
              content.append(next(src))
              break
          else:
              content.append(read_tex(src))
      return Arg.parse(content)
docs: Read the argument from buffer.
  
      Advances buffer until right before the end of the argument.
  
      :param Buffer src: a buffer of tokens
      :param str c: argument token (starting token)
      :return: the parsed argument
      :rtype: Arg