@classmethod
  def get_arg_descriptions_from_docstring(cls, obj):

    ret = OrderedDict()
    name = ''
    doc = obj.__doc__ or ''
    lines = [s.strip() for s in doc.split('\n')]
    stanza_first_line_re = cls._get_stanza_first_line_re()
    for line in lines:
      m = stanza_first_line_re.match(line)
      if m and m.group(1) == 'param':
        # If first line of a parameter description, set name and description.
        name, description = m.group(3, 4)
        ret[name] = description
      elif m and m.group(1) != 'param':
        # If first line of a description of an item other than a parameter, clear name.
        name = ''
      elif name and line:
        # If subsequent line of a parameter description, add to existing description (if any) for
        # that parameter.
        ret[name] += (' ' + line) if ret[name] else line
      # Ignore subsequent lines of descriptions of items other than parameters.
    return ret
UrlTemplate match method with params (from begining of str)
dataset/ETHPy150Open pantsbuild/pants/src/python/pants/help/build_dictionary_info_extracter.py/BuildDictionaryInfoExtracter.get_arg_descriptions_from_docstring--crossover with--dataset/ETHPy150Open SmartTeleMax/iktomi/tests/web/url_template.py/UrlTemplateTests.test_match_from_begining_with_params