More support for numpy tuple indexing

This commit is contained in:
Łukasz Langa 2018-03-17 02:39:53 -07:00
parent 94f50c1461
commit 2fa31ff314
2 changed files with 10 additions and 2 deletions

View File

@ -831,7 +831,7 @@ def __attrs_post_init__(self) -> None:
OPENING_BRACKETS = set(BRACKET.keys())
CLOSING_BRACKETS = set(BRACKET.values())
BRACKETS = OPENING_BRACKETS | CLOSING_BRACKETS
ALWAYS_NO_SPACE = CLOSING_BRACKETS | {token.COMMA, token.COLON, STANDALONE_COMMENT}
ALWAYS_NO_SPACE = CLOSING_BRACKETS | {token.COMMA, STANDALONE_COMMENT}
def whitespace(leaf: Leaf) -> str: # noqa C901
@ -849,12 +849,18 @@ def whitespace(leaf: Leaf) -> str: # noqa C901
return DOUBLESPACE
assert p is not None, f"INTERNAL ERROR: hand-made leaf without parent: {leaf!r}"
if t == token.COLON and p.type != syms.subscript:
return NO
prev = leaf.prev_sibling
if not prev:
prevp = preceding_leaf(p)
if not prevp or prevp.type in OPENING_BRACKETS:
return NO
if t == token.COLON:
return SPACE if prevp.type == token.COMMA else NO
if prevp.type == token.EQUAL:
if prevp.parent and prevp.parent.type in {
syms.typedargslist,
@ -983,7 +989,7 @@ def whitespace(leaf: Leaf) -> str: # noqa C901
return NO
elif prev.type == token.COLON:
else:
return NO
elif p.type == syms.atom:

View File

@ -90,6 +90,7 @@
slice[1:]
slice[::-1]
numpy[:, 0:1]
numpy[:, :-1]
(str or None) if (sys.version_info[0] > (3,)) else (str or bytes or None)
{'2.7': dead, '3.7': long_live or die_hard}
{'2.7', '3.6', '3.7', '3.8', '3.9', '4.0' if gilectomy else '3.10'}
@ -232,6 +233,7 @@ async def f():
slice[1:]
slice[::-1]
numpy[:, 0:1]
numpy[:, :-1]
(str or None) if (sys.version_info[0] > (3,)) else (str or bytes or None)
{'2.7': dead, '3.7': long_live or die_hard}
{'2.7', '3.6', '3.7', '3.8', '3.9', '4.0' if gilectomy else '3.10'}