Dave Halter
dae1a48d70
Remove a lot of the old Name.names usages in favor of a direct NamePart usage.
2014-09-22 22:34:33 +02:00
Dave Halter
99d35e57b6
Fix alias usages in goto_assignments.
2014-09-19 13:42:47 +02:00
Dave Halter
ed56f73836
Care for nested imports in goto_assignments.
2014-09-19 12:14:29 +02:00
Dave Halter
b2342c76be
Refactoring: Make Import.get_all_import_names return NameParts.
2014-09-19 01:40:09 +02:00
Dave Halter
83d2af5138
First imports are working with goto.
2014-09-19 01:21:17 +02:00
Dave Halter
7b0bb83d16
Change the behavior of eval_statement_element and follow_call_path. Arrays should only be looked at in the latter.
2014-09-18 23:44:11 +02:00
Dave Halter
69e6139527
Goto on named params in class calls is now working.
2014-09-18 20:11:58 +02:00
Dave Halter
657a2c7d4f
Trying to get the NameFinder to use only NameParts.
2014-09-10 16:20:30 +02:00
Dave Halter
38f7296f39
Typo.
2014-09-09 16:51:46 +02:00
Dave Halter
87aa76678a
Goto should work on named params, too.
2014-09-09 16:48:53 +02:00
Dave Halter
5a3ee02399
Use ExprStmt pretty much everywhere where it should be used.
...
ExprStmt is now really a normal statement. All the other statements are from now on considered legacy code. As a side effect this increases the parser pickling version.
2014-09-06 11:13:58 +02:00
Dave Halter
06699993f1
Class inheritance definitions shouldn't be params. It's just statements.
2014-09-04 12:28:50 +02:00
Dave Halter
1df025c39d
Definitions should not be followed in Evaluator.goto.
2014-09-04 11:55:42 +02:00
Dave Halter
fb10199f37
Remove search_name and search_name_part from goto returns.
...
The search_name can be retrieved by checking definitions for it. Definitions should always be names or even better name_parts in case of goto. Therefore we can just get it there.
2014-09-03 23:28:19 +02:00
Dave Halter
95852f5e7f
Clarify inner workings of Evaluator.goto
2014-09-03 14:58:24 +02:00
Dave Halter
d6dd7cd55e
Move process_precedence_element from the Evaluator to the precedence module.
2014-08-20 15:59:37 +02:00
Dave Halter
6b7ce590fa
Simplify get_parent_scope
2014-08-12 01:37:58 +02:00
Dave Halter
33e5a3280a
Remove IsScope in favor of an is_scope function.
...
This function was partially implemented anway. Now we've also added a function called 'get_parent_scope', to make it easy to get a scope of a Call, Statement, whatever.
2014-08-12 01:19:19 +02:00
Dave Halter
f1711f8f9c
possible direction of branch checks for name resolution.
2014-08-10 13:17:37 +02:00
Dave Halter
e58dc0a3d9
simplify evaluator.execute, because now everything is using py__call__
2014-07-30 15:40:10 +02:00
Dave Halter
373ff2c45a
fix most issues related to the py__call__ stuff and generalize it.
2014-07-30 15:23:41 +02:00
Dave Halter
1e6a950aec
further progress in changing to py__call__
2014-07-30 14:40:56 +02:00
Dave Halter
ccd304bcb7
start switching to a more python similar approach of naming, start by naming execution stuff py__call__
2014-07-30 14:06:32 +02:00
Danilo Bargen
c97e1732ee
Operator statement wrapper was missing ( fixes #436 )
2014-07-27 12:53:18 +02:00
Dave Halter
ea370a083d
more consequent usage of scope_names_generator
2014-07-03 11:41:33 +02:00
Dave Halter
aba4a16ae3
fix indexing issues for multiple index options
2014-06-27 11:23:46 +02:00
Dave Halter
d5758adb2b
fix list comprehensions. they were not implemented in a good way
2014-06-12 11:10:10 +02:00
Dave Halter
f8b79b3dd0
work in progress refactoring to make ListComprehension a sublass of ForFlow
2014-06-12 10:13:49 +02:00
Dave Halter
43e54b6173
list comprehensions should be able to serve as an input for dynamic params as well.
2014-06-11 21:54:18 +02:00
Dave Halter
081fa79d9b
fix issues with generator comprehensions used directly with a send() call or something similar
2014-06-10 00:56:51 +02:00
Dave Halter
af801ef9b4
make generator comprehensions work
2014-06-10 00:36:36 +02:00
Dave Halter
0b926ca454
get rid of is_list_comp boolean in favor of a direct check of ListComprehensionFlow
2014-06-09 20:19:31 +02:00
Dave Halter
dd8e4341db
create a ListComprehensionFlow, to make the distinction between ForFlow and list comprehensions clearer
2014-06-09 20:09:53 +02:00
Dave Halter
9bcc4f8fd2
static analysis is now able to tell the difference between NameError/AttributeError
2014-05-13 16:14:32 +02:00
Dave Halter
b6ec589997
refactor general array lookup method get_index_types
2014-05-12 15:23:48 +02:00
Dave Halter
70d85d1b3a
strip_imports -> follow_imports
2014-05-12 11:18:47 +02:00
Dave Halter
9eb75f9c61
static analysis prototype decription
2014-05-07 12:39:18 +02:00
Dave Halter
23b4a89d1d
slices should be ignored in __getitem__ settings (for now)
2014-04-28 18:15:25 +02:00
Dave Halter
70efa159f2
fix for slices which have been screwed up in a few previous commits... again...
2014-04-22 10:21:15 +02:00
Dave Halter
eaf54942fc
fix a slice issue with precedences.
2014-04-21 02:30:17 +02:00
Dave Halter
240b0c9581
NamePart doesn't have an __eq__ method anymore
2014-04-18 14:36:10 +02:00
Dave Halter
6a40c9b671
remove get_set_vars completely from existance
2014-04-14 12:40:59 +02:00
Dave Halter
4bc55be103
significant speedup due to compiled caching
2014-04-13 16:31:38 +02:00
Dave Halter
840a806246
generalize import optimizations and make them behave more like sys.modules
2014-04-10 15:21:23 +02:00
Dave Halter
f7e236971b
moved the input of get_index_types to a more typical type system
2014-04-04 12:09:46 +02:00
Dave Halter
84fde13b84
implemented a first prototype of a slicing and index creation function
2014-04-03 21:10:42 +02:00
Dave Halter
29435852e6
trying to clean up the goto mess
2014-03-28 13:46:36 +01:00
Dave Halter
18e5a3ad4f
document a goto part of the API
2014-03-11 16:08:20 +01:00
Dave Halter
cffdcd2571
correct developer documentation a little bit
2014-03-11 15:38:46 +01:00
Dave Halter
937ab602ae
add a lambda integration testing file
2014-03-11 11:59:17 +01:00