Recognize {**d} as a dict instead of set

This commit is contained in:
Claude
2018-09-22 21:45:34 +02:00
committed by Dave Halter
parent afb2755c27
commit b9127147e4
2 changed files with 10 additions and 1 deletions

View File

@@ -255,7 +255,8 @@ def eval_atom(context, atom):
array_node_c = array_node.children
except AttributeError:
array_node_c = []
if c[0] == '{' and (array_node == '}' or ':' in array_node_c):
if c[0] == '{' and (array_node == '}' or ':' in array_node_c or
'**' in array_node_c):
context = iterable.DictLiteralContext(context.evaluator, context, atom)
else:
context = iterable.SequenceLiteralContext(context.evaluator, context, atom)

View File

@@ -131,3 +131,11 @@ set_t2 = set()
#? ['clear', 'copy']
set_t2.c
# -----------------
# pep 448 unpacking generalizations
# -----------------
# python >= 3.5
#? dict()
{**d}