Dave Halter
d7face17f6
Using expr_stmt now instead of simple_stmt as ExprStmt, because that resembles the official grammar better.
2014-10-17 12:03:41 +02:00
Dave Halter
19acdd32b7
Fixed issues with the Python3.4 grammar file.
...
The order of symbols matters. 'file_input' needs to be the first symbol.
2014-10-17 01:34:47 +02:00
Dave Halter
ae8969a0d1
New kind of KeywordStatement
2014-10-17 01:26:34 +02:00
Dave Halter
aefc5ec15f
add the 3.4 grammar.
2014-10-16 14:47:14 +02:00
Dave Halter
01ce93cb5c
Preparation for a parser refactoring.
2014-10-16 11:45:25 +02:00
Dave Halter
887949e23f
Start making executions work.
2014-10-16 10:58:27 +02:00
Dave Halter
7b91050c85
introduce something that resembles argument clinic in stdlib.
2014-10-16 10:58:11 +02:00
Dave Halter
631aa0ea61
Processing atom and power nodes.
2014-10-15 13:40:56 +02:00
Dave Halter
485b8ae3da
Move Node away from pytree into the parser representation.
2014-10-13 13:47:32 +02:00
Dave Halter
6458047bac
Name in statement definition implementation.
2014-10-13 13:33:49 +02:00
Dave Halter
0def3afaaa
A move function for Nodes.
2014-10-12 23:37:46 +02:00
Dave Halter
660124aca1
Get an example running: 'import json; json.dump'.
2014-10-12 22:37:23 +02:00
Dave Halter
e2b7e74aef
Import improvements.
2014-10-10 17:52:36 +02:00
Dave Halter
a192f4f347
Add keywords, improve import support.
2014-10-10 17:48:40 +02:00
Dave Halter
54c91b1509
Get a first local test passing.
2014-10-10 12:07:08 +02:00
Dave Halter
3bf1fec568
Start implementing an algorithm for actually evaluating the parser tree.
2014-10-10 11:29:22 +02:00
Dave Halter
66840a742c
Implement the new parser in jedi.parser.Parser
2014-10-10 00:06:28 +02:00
Dave Halter
05fd7f992e
Don't use the fast parser at the moment. It's more important for now to even get a parser working.
2014-10-09 14:36:52 +02:00
Dave Halter
aa75140f96
Remove old base class for Nodes.
2014-10-09 13:33:42 +02:00
Dave Halter
92ee2a912e
Actually get the first few written tests passing.
2014-10-09 13:21:30 +02:00
Dave Halter
68d23840bb
Start actual testing of the new parser.
2014-10-09 13:16:28 +02:00
Dave Halter
daee273a08
Remove all the old get_code references.
2014-10-09 11:38:57 +02:00
Dave Halter
843efb43e9
statement refactoring.
2014-10-09 11:36:27 +02:00
Dave Halter
a0092c2653
remove old statement parser code.
2014-10-09 11:20:49 +02:00
Dave Halter
140320143a
Remove the old Leave class.
2014-10-09 11:02:03 +02:00
Dave Halter
c7c222daab
Implement WhiteSpace as well and merge with pytree.
2014-10-09 10:55:03 +02:00
Dave Halter
8236ce18a2
Refactor Literal.
2014-10-09 03:23:52 +02:00
Dave Halter
eb384fc2d1
Name refactoring.
2014-10-09 03:21:18 +02:00
Dave Halter
432ec8f186
Operator refactoring.
2014-10-09 03:15:50 +02:00
Dave Halter
6bb88ddd85
Function is starting to work.
2014-10-08 17:58:02 +02:00
Dave Halter
585e92ac9f
Temporarily disable evaluate/compiled stuff, because it interferes with the current changes of the parser. This will be undone.
2014-10-08 17:45:49 +02:00
Dave Halter
308c971ad7
Change pr.Simple.
2014-10-08 17:02:37 +02:00
Dave Halter
d9aa84f971
simplify the use of 'context'
2014-10-08 16:33:35 +02:00
Dave Halter
e54dac3777
Start setting up the parser.representation merge
2014-10-08 16:15:27 +02:00
Dave Halter
220ddc8a74
Probably the last big removals, there's not a lot left.
2014-10-08 15:35:45 +02:00
Dave Halter
a23ad3df10
Remove more and more from pytree.
2014-10-08 15:30:15 +02:00
Dave Halter
2781a4ac98
Remove comparison methods.
2014-10-08 15:22:44 +02:00
Dave Halter
1fb6e15750
Fix prefixes of Leafs.
2014-10-08 15:19:36 +02:00
Dave Halter
36368cd606
More removals and cleanups.
2014-10-08 15:13:43 +02:00
Dave Halter
07d9111c77
Remove some more pytree methods.
2014-10-08 15:05:29 +02:00
Dave Halter
a7fff54d7b
Remove some fixer related stuff (lib2to3 stuff).
2014-10-08 15:04:01 +02:00
Dave Halter
834172a3e9
Add a new parser, check it pgen2 would work. (already modified outside this repository)
2014-10-08 14:26:52 +02:00
Dave Halter
09a7317bc9
Merge branch 'dev' of github.com:davidhalter/jedi into dev
2014-10-06 17:55:46 +02:00
Dave Halter
e9a3a44780
Remove some other _star_import_cache stuff, and with this, #489 should be fixed.
2014-10-06 17:55:28 +02:00
Dave Halter
3638d5149d
Change time_cache, to also host the star_import_cache.
2014-10-06 17:37:34 +02:00
Dave Halter
bbdb4703ec
change cache_call_signatures, so that it has a well defined input.
2014-10-06 16:07:33 +02:00
Dave Halter
87574e9d2e
star_import_cache refactorings: Make it more readable.
2014-10-04 12:43:08 +02:00
Dave Halter
a1b55a9df7
clear_caches -> clear_time_caches
2014-10-03 14:23:46 +02:00
Dave Halter
116e9e72fc
is_definition/Import issue
2014-10-02 11:27:01 +02:00
Dave Halter
8ca48f03db
Tests for imports and is_definition.
2014-10-02 11:14:03 +02:00
Dave Halter
90d159eadd
Merge pull request #483 from ColinDuquesnoy/fix_runtime_error
...
Fix RuntimeError: the PyQt5.QtCore and PyQt4.QtCore modules both wrap the QObject class
2014-09-29 16:07:01 +04:30
Dave Halter
27444ed64d
Remove Import.alias_name_part, it was simply an alias for another lookup.
2014-09-26 16:32:36 +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
6f29e802c2
Fix an issue with as_names.
2014-09-26 15:48:49 +02:00
Dave Halter
7fea6437d9
Fix issues with Definition.full_name
2014-09-26 13:07:21 +02:00
Dave Halter
4f4ac505a3
Fix isses with interpreter completions.
2014-09-26 13:07:08 +02:00
Dave Halter
3add6e4289
Fix various bugs.
2014-09-26 12:22:56 +02:00
Dave Halter
ce3ec6b534
Finally remove ArrayMethod and use an InstanceElement instead (which it basically is).
2014-09-26 12:08:04 +02:00
Dave Halter
90842ce62d
Fixed global variables.
2014-09-26 11:58:11 +02:00
Dave Halter
4eaee09d6e
Fix named param issues.
2014-09-26 11:52:26 +02:00
Dave Halter
47c4369d28
Fix remaining issues with sys path checks.
2014-09-25 18:28: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
c2d645b7c1
Fix one of the really hard issues: deep_ast_copy didn't copy the newly created _names_dict.
2014-09-25 12:15:15 +02:00
Dave Halter
16f244a1b2
Fix isinstance issues.
2014-09-25 00:36:53 +02:00
Dave Halter
59225ceaa3
usages issues.
2014-09-25 00:14:43 +02:00
Dave Halter
9ecf3774a0
Import issues again.
2014-09-24 21:59:08 +02:00
Dave Halter
c43afae24a
Issues with imports.
2014-09-24 21:12:38 +02:00
Dave Halter
ff61c1d81c
Fix an extremely annoying bug that made pickling impossible.
2014-09-24 20:58:29 +02:00
Dave Halter
56243e10c6
The get_code generation of imports was buggy.
2014-09-24 17:48:11 +02:00
Dave Halter
db31536d78
Fix issue with descriptors.
2014-09-24 16:52:44 +02:00
Dave Halter
19b32a3657
And by changing small things about NamePart/InstanceElement usage, we're finally able to pass the class tests again.
2014-09-24 15:42:44 +02:00
Dave Halter
f300e63dae
A couple of changes:
...
- parser.representation now uses ArrayStmt and ExprStatement to be able to differentiate easily with isinstance.
- NameParts are temporarily allowed again as InstanceElements.
2014-09-24 15:21:56 +02:00
Dave Halter
0a65eea2cf
Start to change the logic for self.foo variables.
2014-09-24 14:33:15 +02:00
Dave Halter
12e391c97a
Add a LazyDict to be able to use it within FunctionExecution for get_names_dict
2014-09-24 12:57:26 +02:00
Dave Halter
d5fbc006e2
Add a names_dict to scopes. This is good for the future parser and now useful to process self.foo and other stuff.
2014-09-24 12:44:24 +02:00
Dave Halter
c61f79314b
Introduce get_names_dict to statements to actually fetch the calls out of a statement.
...
This is going to be the new default method to do dynamic stuff as well as self.foo resolutions for instances.
2014-09-24 12:06:41 +02:00
Dave Halter
5efa467449
Few import issues.
2014-09-22 23:45:48 +02:00
Dave Halter
1d71b25109
Previously forgot to add the NameParts to used_names. (which had worked before that)
2014-09-22 23:24:29 +02:00
Dave Halter
6819deb404
Resolve some **kwargs issues.
2014-09-22 23:06:22 +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
04cf742973
Temporary parser implementation. Now we're pretty much done with pr.Name.
2014-09-22 17:05:23 +02:00
Dave Halter
6bd7ef56f1
Now most tests pass and we're able to continue getting rid of parsing.representation.Name.
2014-09-22 15:41:27 +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
779618c08b
First changes to eventually replace Name by NamePart.
2014-09-22 11:57:19 +02:00
Dave Halter
b26f51ded2
Fix obvious UnboundLocalError.
2014-09-19 18:08:30 +02:00
Dave Halter
78bd775889
Only real modules should be added in get_modules_containing_name.
2014-09-19 18:05:57 +02:00
Dave Halter
e0f84ccb86
Tests for issues with default args in dynamic param contexts.
2014-09-19 16:56:26 +02:00
Dave Halter
d4503c77a5
get_parent_until should always have the same signature.
...
Fix it for ArrayMethod.get_parent_until.
2014-09-19 16:17:05 +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
fc5f73861c
Fix issues with the os module.
...
Using a try/finally assures that the recursion checkers work the right way.
2014-09-19 10:59:24 +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
610b2fc832
tests for goto on imports.
2014-09-19 00:49:22 +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
ba80e35204
Test for an issue with named params in class calls (instead of functions).
2014-09-18 13:30:52 +02:00