mirror of
https://github.com/python/cpython.git
synced 2025-12-08 06:10:17 +00:00
Lazy imports grammar / AST changes
This commit is contained in:
parent
fb114cf497
commit
1c691ea756
25 changed files with 1016 additions and 338 deletions
|
|
@ -35,6 +35,7 @@
|
|||
FUNCTION_ATTR_FLAGS = ('defaults', 'kwdefaults', 'annotations', 'closure', 'annotate')
|
||||
|
||||
ENTER_EXECUTOR = opmap['ENTER_EXECUTOR']
|
||||
IMPORT_NAME = opmap['IMPORT_NAME']
|
||||
LOAD_GLOBAL = opmap['LOAD_GLOBAL']
|
||||
LOAD_SMALL_INT = opmap['LOAD_SMALL_INT']
|
||||
BINARY_OP = opmap['BINARY_OP']
|
||||
|
|
@ -601,6 +602,12 @@ def get_argval_argrepr(self, op, arg, offset):
|
|||
argval, argrepr = _get_name_info(arg//4, get_name)
|
||||
if (arg & 1) and argrepr:
|
||||
argrepr = f"{argrepr} + NULL|self"
|
||||
elif deop == IMPORT_NAME:
|
||||
argval, argrepr = _get_name_info(arg//4, get_name)
|
||||
if (arg & 1) and argrepr:
|
||||
argrepr = f"{argrepr} + lazy"
|
||||
elif (arg & 2) and argrepr:
|
||||
argrepr = f"{argrepr} + eager"
|
||||
else:
|
||||
argval, argrepr = _get_name_info(arg, get_name)
|
||||
elif deop in hasjump or deop in hasexc:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue