forked from VimPlug/jedi
107 lines
1.8 KiB
ReStructuredText
107 lines
1.8 KiB
ReStructuredText
|
|
This file is the start of the documentation of how static analysis works.
|
|
|
|
Below is a list of parser names that are used within nodes_to_execute.
|
|
|
|
------------ cared for:
|
|
global_stmt
|
|
exec_stmt # no priority
|
|
assert_stmt
|
|
if_stmt
|
|
while_stmt
|
|
for_stmt
|
|
try_stmt
|
|
(except_clause)
|
|
with_stmt
|
|
(with_item)
|
|
(with_var)
|
|
print_stmt
|
|
del_stmt
|
|
return_stmt
|
|
raise_stmt
|
|
yield_expr
|
|
file_input
|
|
funcdef
|
|
param
|
|
old_lambdef
|
|
lambdef
|
|
import_name
|
|
import_from
|
|
(import_as_name)
|
|
(dotted_as_name)
|
|
(import_as_names)
|
|
(dotted_as_names)
|
|
(dotted_name)
|
|
classdef
|
|
comp_for
|
|
(comp_if) ?
|
|
decorator
|
|
|
|
----------- add basic
|
|
test
|
|
or_test
|
|
and_test
|
|
not_test
|
|
expr
|
|
xor_expr
|
|
and_expr
|
|
shift_expr
|
|
arith_expr
|
|
term
|
|
factor
|
|
power
|
|
atom
|
|
comparison
|
|
expr_stmt
|
|
testlist
|
|
testlist1
|
|
testlist_safe
|
|
|
|
----------- special care:
|
|
# mostly depends on how we handle the other ones.
|
|
testlist_star_expr # should probably just work with expr_stmt
|
|
star_expr
|
|
exprlist # just ignore? then names are just resolved. Strange anyway, bc expr is not really allowed in the list, typically.
|
|
|
|
----------- ignore:
|
|
suite
|
|
subscriptlist
|
|
subscript
|
|
simple_stmt
|
|
?? sliceop # can probably just be added.
|
|
testlist_comp # prob ignore and care about it with atom.
|
|
dictorsetmaker
|
|
trailer
|
|
decorators
|
|
decorated
|
|
# always execute function arguments? -> no problem with stars.
|
|
# Also arglist and argument are different in different grammars.
|
|
arglist
|
|
argument
|
|
|
|
|
|
----------- remove:
|
|
tname # only exists in current Jedi parser. REMOVE!
|
|
tfpdef # python 2: tuple assignment; python 3: annotation
|
|
vfpdef # reduced in python 3 and therefore not existing.
|
|
tfplist # not in 3
|
|
vfplist # not in 3
|
|
|
|
--------- not existing with parser reductions.
|
|
small_stmt
|
|
import_stmt
|
|
flow_stmt
|
|
compound_stmt
|
|
stmt
|
|
pass_stmt
|
|
break_stmt
|
|
continue_stmt
|
|
comp_op
|
|
augassign
|
|
old_test
|
|
typedargslist # afaik becomes [param]
|
|
varargslist # dito
|
|
vname
|
|
comp_iter
|
|
test_nocond
|