Dave Halter
1d2980cd2d
Remove a flow information thing for now.
2014-11-03 18:27:31 +01:00
Dave Halter
e25684d470
Start to check for name positions with names_dict name finder.
2014-11-03 15:58:56 +01:00
Dave Halter
4676998fb5
Playing with params/names_dict
2014-11-03 13:38:57 +01:00
Dave Halter
1ff4713848
Move error recovery function.
2014-11-02 17:24:06 +01:00
Dave Halter
0c3cba166e
Make names_dict available in modules.
2014-11-02 14:22:00 +01:00
Dave Halter
1c09a90ac1
Disable usage of filter_private_variable for now.
2014-10-28 17:00:12 +01:00
Dave Halter
1cc1d4480b
Fix issues with copying children in combination with InstanceElement.
2014-10-28 13:33:40 +01:00
Dave Halter
b550f67bce
Small instance refactoring, now adding is_generated as a param.
2014-10-28 11:33:28 +01:00
Dave Halter
19e083cbfb
Make Leaf public
2014-10-28 11:13:33 +01:00
Dave Halter
b3d87302f9
Small changes to adapt oto the new param structure.
2014-10-28 02:11:13 +01:00
Dave Halter
2315d51e68
direct param evaluation
2014-10-25 14:37:01 +02:00
Dave Halter
995f0700c9
Fix params, so that quite a few functions can now pass.
2014-10-25 02:35:04 +02:00
Dave Halter
4384e938e9
Get a few more things right with params.
2014-10-25 02:25:09 +02:00
Dave Halter
5b29e2c54d
Add a method 'Name.assignment_indexes', to process tuple assignments.
2014-10-21 15:45:29 +02:00
Dave Halter
c821b30017
Fix a first test: complex.py
2014-10-20 17:06:18 +02:00
Dave Halter
74d4fcf4e7
globals are more or less ready.
2014-10-17 18:48:07 +02:00
Dave Halter
660124aca1
Get an example running: 'import json; json.dump'.
2014-10-12 22:37:23 +02:00
Dave Halter
03e01631cc
Remove NamePart from existance and rename it to Name.
2014-09-26 16:29:53 +02:00
Dave Halter
522c9eda90
Remove pr.Name completely.
2014-09-26 16:18:10 +02:00
Dave Halter
4d7db35340
Fix a few last tests, now Jedi's working again, tests are passing.
2014-09-26 16:02:03 +02:00
Dave Halter
f4c99259b5
Fix an issue with sys.path. Also moved the names closure for isinstance checks away (used for sys.path stuff) and use a get_code check instead, which is more flexible.
2014-09-25 12:35:53 +02:00
Dave Halter
16f244a1b2
Fix isinstance issues.
2014-09-25 00:36:53 +02:00
Dave Halter
db31536d78
Fix issue with descriptors.
2014-09-24 16:52:44 +02:00
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
8f3301f281
Passing Function tests now.
2014-09-22 14:06:38 +02:00
Dave Halter
c4e45916c6
Modules also use a NamePart as a name, now.
2014-09-22 12:52:48 +02:00
Dave Halter
085c8034b3
Apply evaluate.representation wrappers already before they go out into the goto world.
2014-09-11 02:20:54 +02:00
Dave Halter
0eea30f227
NamePart migration of Definition is complete. Now Completion.
2014-09-10 18:29:10 +02:00
Dave Halter
a93a389d5c
Fix all the normal issues with the NameFinder change. Now goto...
2014-09-10 16:30:22 +02:00
Dave Halter
657a2c7d4f
Trying to get the NameFinder to use only NameParts.
2014-09-10 16:20:30 +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
f57d9ef675
Rename Name.get_parent_stmt to Name.get_definition, because it's not always a statement. Also start using it in the NameFinder.
2014-09-06 10:43:26 +02:00
Dave Halter
12154fdecf
Refactor a few name finder things.
2014-09-05 12:12:29 +02:00
Dave Halter
bcc84820fe
Fix issues with unreachable flows.
...
This benefits static analysis as well as autocompletion: Unreachable code (things like code within 'if 0:') should still be resolveable.
2014-09-03 00:05:37 +02:00
Dave Halter
442a1a1d08
wrap some more values with er.wrap
2014-08-20 13:52:49 +02:00
Dave Halter
2e949b43bb
Ignore FunctionExecutions in old style isinstance checks for now, because it collides with new style isinstance checks.
2014-08-20 11:31:11 +02:00
Dave Halter
8006d6f190
Change implementation of StatementElement.
...
Instead of having both next and execution as attributes, we now only have next, because it's an execution if there's an array.
2014-08-18 22:25:55 +02:00
Dave Halter
9f38f10366
fix tests. Operators should not equal to other operators with a different position. or even parent.
2014-08-18 13:13:07 +02:00
Dave Halter
89ab0ba137
Fix fast_parent_copy. The caching is now more solid than before (and doesn't produce weird side effects. This also solves an issue with Lambdas. However, by fixing all of this we have broken some other things.
2014-08-15 01:55:43 +02:00
Dave Halter
1540ac89f8
Implement the descriptor protocoll properly for instances.
2014-08-14 12:15:48 +02:00
Dave Halter
cf32e15f65
Remove the old 'is not' logic to detect if not instances and use them to do branch predictions. This is not necessary anymore, since we now support that in a more general way (flow_analysis).
2014-08-12 18:14:03 +02:00
Dave Halter
fb1dba269a
re-enable the interpretation of the None keyword
2014-08-12 14:38:56 +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
1865284fa9
fix the interpreter (previously broken by flow analysis)
2014-08-12 00:19:20 +02:00
Dave Halter
f1711f8f9c
possible direction of branch checks for name resolution.
2014-08-10 13:17:37 +02:00
Dave Halter
625e88e851
isinstance checks now also give you type hints in class contexts, fixes #241 .
2014-08-04 02:11:30 +02:00
Dave Halter
7bba12e8c5
comments
2014-08-03 23:00:32 +02:00
Dave Halter
0fbd5efefd
wrap instance element creation so that it only contains functions and statements, not CompiledObject or Instance.
2014-07-31 13:16:11 +02:00
Dave Halter
15f42d93d7
it should be possible to find the origin of an operation, if it's a faulty one (static analysis)
2014-07-22 14:52:58 +02:00
Dave Halter
1fd7acef7a
finally able to remove _get_defined_names_for_position
2014-07-03 11:53:51 +02:00