class_docstr: Parse a requirement.
  
  Parse a given requirement string into its parts, such as name, specifier,
  URL, and extras. Raises InvalidRequirement on a badly-formed requirement
  string.
code: def __repr__(self):
      return "<Requirement({0!r})>".format(str(self))
  
file_path: catboost/contrib/python/setuptools/py2/setuptools/_vendor/packaging/requirements.py
imports: from __future__ import absolute_import, division, print_function
  import string
  import re
  from setuptools.extern.pyparsing import stringStart, stringEnd, originalTextFor, ParseException
  from setuptools.extern.pyparsing import ZeroOrMore, Word, Optional, Regex, Combine
  from setuptools.extern.pyparsing import Literal
  from setuptools.extern.six.moves.urllib import parse
  from .markers import MARKER_EXPR, Marker
  from .specifiers import LegacySpecifier, Specifier, SpecifierSet
label_desc: Use image node_id 3 for calling the Requirement obj's underlying member method code with example usage: obj.__repr__() and returns: str