INNER CODE UNIT · Python

unescape

introlab/rtabmap · doxygen/generate_parameters_page.py:112

def unescape(literal):
    """Concatenate adjacent C string literals and undo their escapes."""
    out = []
    for chunk in re.findall(r'"((?:[^"\\]|\\.)*)"', literal):
        out.append(chunk.replace('\\"', '"').replace('\\n', ' ')
                        .replace('\\t', ' ').replace('\\\\', '\\'))
    return ''.join(out) if out else literal.strip()


def parse(path):
    """Return the parameters of Parameters.h, in declaration order."""
    with open(path, newline='') as f:
        lines = f.read().replace('\r\n', '\n').split('\n')

    params, order = {}, []
    conditions = []          # #if nesting, innermost last; None marks an #else
    statement, collecting = '', False
    in_class = False

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…