Beispiel #1
0
def parse_lint_def(lint):
    lint_dict = {}
    lint_dict['id'] = lint.name
    lint_dict['level'] = lint.level
    lint_dict['docs'] = {}

    last_section = None

    for line in lint.doc:
        if len(line.strip()) == 0 and not last_section.startswith("Example"):
            continue

        match = re.match(lint_subheadline, line)
        if match:
            last_section = match.groups()[0]
        if match:
            text = match.groups()[1]
        else:
            text = line

        if not last_section:
            log.warn(
                "Skipping comment line as it was not preceded by a heading")
            log.debug("in lint `%s`, line `%s`", lint.name, line)

        fragment = lint_dict['docs'].get(last_section, "")
        if text == "\n":
            line = fragment + text
        else:
            line = (fragment + "\n" + text).strip()

        lint_dict['docs'][last_section] = line

    return lint_dict
Beispiel #2
0
def parse_lint_def(lint):
    lint_dict = {}
    lint_dict['id'] = lint.name
    lint_dict['level'] = lint.level
    lint_dict['docs'] = {}

    last_section = None

    for line in lint.doc:
        if len(line.strip()) == 0:
            continue

        match = re.match(lint_subheadline, line)
        if match:
            last_section = match.groups()[0]
        if match:
            text = match.groups()[1]
        else:
            text = line

        if not last_section:
            log.warn("Skipping comment line as it was not preceded by a heading")
            log.debug("in lint `%s`, line `%s`", lint.name, line)

        lint_dict['docs'][last_section] = \
            (lint_dict['docs'].get(last_section, "") + "\n" + text).strip()

    return lint_dict
Beispiel #3
0
def parse_lint_def(lint):
    lint_dict = {}
    lint_dict['id'] = lint.name
    lint_dict['group'] = lint.group
    lint_dict['level'] = lint.level
    lint_dict['docs'] = {}

    last_section = None

    for line in lint.doc:
        if len(line.strip()) == 0 and not last_section.startswith("Example"):
            continue

        match = re.match(lint_subheadline, line)
        if match:
            last_section = match.groups()[0]
        if match:
            text = match.groups()[1]
        else:
            text = line

        if not last_section:
            log.warn("Skipping comment line as it was not preceded by a heading")
            log.debug("in lint `%s`, line `%s`", lint.name, line)

        fragment = lint_dict['docs'].get(last_section, "")
        if text == "\n":
            line = fragment + text
        else:
            line = (fragment + "\n" + text).strip()

        lint_dict['docs'][last_section] = line

    return lint_dict
Beispiel #4
0
def parse_lint_def(lint):
    lint_dict = {}
    lint_dict['id'] = lint.name
    lint_dict['group'] = lint.group
    lint_dict['level'] = lint.level
    lint_dict['docs'] = OrderedDict()

    last_section = None

    for line in lint.doc:
        match = re.match(lint_subheadline, line)
        if match:
            last_section = match.groups()[0]
            text = match.groups()[1]
        else:
            text = line

        if not last_section:
            log.warning("Skipping comment line as it was not preceded by a heading")
            log.debug("in lint `%s`, line `%s`", lint.name, line)

        if last_section not in lint_dict['docs']:
            lint_dict['docs'][last_section] = ""

        lint_dict['docs'][last_section] += text + "\n"

    for section in lint_dict['docs']:
        lint_dict['docs'][section] = lint_dict['docs'][section].strip()

    return lint_dict