def scan_command_abbreviate(state):
    params = {
        'short': None,
        'full': None,
    }

    state.expect(' ')
    state.skip(' ')
    state.ignore()

    if state.consume() is not EOF:
        return None, [TokenCommandAbbreviate({}), TokenEof()]

    state.backup()

    m = state.match(r'(?P<short>.+?)(?: +(?P<full>.+))?$')
    params.update(m.groupdict())

    return None, [TokenCommandAbbreviate(params), TokenEof()]
dataset/ETHPy150Open guillermooo/Vintageous/ex/parser/scanner_command_abbreviate.py/scan_command_abbreviate/operator `==` -> `is not`