1
0
forked from VimPlug/jedi
Commit Graph

191 Commits

Author SHA1 Message Date
Dave Halter
01ddacfec4 Generalize the tuple order of tokens. 2016-06-14 08:57:38 +02:00
Dave Halter
118ba7d833 A lot of stuff is not needed anymore, because of the recent refactorings. 2016-06-14 08:31:36 +02:00
Dave Halter
27f05de3b7 Fix a few more issues, mostly with the fast parser. 2016-06-13 18:21:17 +02:00
Dave Halter
82c76fa689 Merge with the linter branch (especially the changes of pep484. 2016-06-07 13:51:25 +02:00
Dave Halter
87a75fdfe4 Remove old unused code. 2016-06-06 09:27:43 +02:00
Dave Halter
dd85fc6ffd Add error token in a normal way to the syntax tree as ErrorLeaf. 2016-06-05 14:49:57 +02:00
Dave Halter
5edcf47512 Break Interpreter completion even more in favor of a better solution in the future. 2016-06-03 19:31:42 +02:00
Dave Halter
0c7894b3e6 Fix a few fast parser tests. 2016-06-02 08:24:52 +02:00
Dave Halter
ad8d730a57 More test fixes. 2016-05-31 01:12:07 +02:00
Dave Halter
4f6368e7eb Now ErrorLeaf and ErrorNode are part of the syntax tree. This makes probably sense. The documentation will follow once it's clear how they will shape out. 2016-05-30 00:34:58 +02:00
Dave Halter
daa68b66ad Fix a few issues caused by the refactoring. 2016-05-29 19:49:35 +02:00
Dave Halter
feef45f4bb Fixed all on_import tests. 2016-05-29 12:08:53 +02:00
Dave Halter
4714b464a6 Further import completion improvements. 2016-05-28 02:08:43 +02:00
Dave Halter
cbba314286 Progress and actually passing a few tests. 2016-05-26 00:10:54 +02:00
Dave Halter
d4a10929e2 Starting to create a way of how context sensitive completions can be made.
This involves playing heavily with the parser pgen2. We use its stack to check for all possible tokens/keywords.
2016-05-23 18:11:44 +02:00
Dave Halter
c09a916ab5 Didn't load grammar for Python 2.6 correctly. 2016-01-27 17:52:42 -02:00
Dave Halter
2a691eefff Including pgen2 tests from the cpython repo. 2015-12-26 03:15:09 +01:00
Dave Halter
ab5d0ed72b Starting with Python 3.4 from is not a token that always is a "new" statement. 2015-12-26 02:47:22 +01:00
Dave Halter
eb2e41f771 Grammar versioning has now a smoother interface. 2015-12-25 19:30:25 +01:00
Dave Halter
a373e34229 The parser without error recovery raises an error now if he's not able to parse something. 2015-12-25 18:53:05 +01:00
Dave Halter
c15551ccc1 Errortokens should also make the parser fail in the normal parser. 2015-12-20 23:11:52 +01:00
Dave Halter
c4906e0e3f Rework the parser so we can use arbitrary start nodes of the syntax.
This also includes a rework for error recovery in the parser. This is now just possible for file_input parsing, which means for full files.
Includes also a refactoring of the tokenizer. No more do we have to add an additional newline, because it now works correctly (removes certain confusion.
2015-12-20 22:25:41 +01:00
Dave Halter
ab91cfa3b5 Fix: print_stmt was not actually cared for in Python 2.7, #662. 2015-12-15 13:08:37 +01:00
Dave Halter
10df0f933f Remove the strange check in the parser to always create expr_stmt and file_input. 2015-03-05 15:30:07 +01:00
Dave Halter
9c2e73d460 Add syntax errors to the parser. 2015-03-04 17:12:51 +01:00
Dave Halter
3a5b2d396e Failed statements should not lead to parser fails. 2015-02-22 20:29:22 +01:00
Dave Halter
0c1bbf78e2 Rename SubModule to Module, because that's a more fitting description. There were reasons for the name before the new fast parser, but those don't exist anymore. 2015-02-05 14:16:43 +01:00
Dave Halter
109fdc53e0 Fix the remaining fast parser issues. 2015-02-05 01:13:00 +01:00
Dave Halter
fdfe17ada5 Import the token IDs directly, this way we minimize lookups. 2015-02-05 00:44:01 +01:00
Dave Halter
dce952aec6 Fix an issue with omited dedents in the parser. 2015-02-05 00:11:12 +01:00
Dave Halter
e23e354fe8 Simplified the line splitting and with that a few other things in the fast parser. 2015-02-03 22:22:57 +01:00
Dave Halter
66dfa59286 Fix some endmarker prefix issues in the fast parser. 2015-02-03 22:09:55 +01:00
Dave Halter
f9fe6b47eb Fix error statement stacks positions. 2015-02-02 10:43:47 +01:00
Dave Halter
bc118e8047 Simplify the fast parser tokenizer more. Now it is more readable and less buggy (+bugfixes). 2015-01-31 20:09:44 +01:00
Dave Halter
413da3b790 Remove the line_offset calculation. We can now also remove it from tokenize. With the position_modifier we have enough tools to change a position, we don't need to do that in tokenize.py. 2015-01-29 17:57:01 +01:00
Dave Halter
c7563470b1 We don't need set_global_names, just set the attribute directly. 2015-01-28 15:00:17 +01:00
Dave Halter
5e8f8f7a8d Fix issues with error correction / newline correction. 2015-01-27 12:24:54 +01:00
Dave Halter
88a3e25814 Fix newline stuff for empty parsers. 2015-01-27 01:15:39 +01:00
Dave Halter
39e869d146 Test added newline module end_pos as well. 2015-01-26 22:02:11 +01:00
Dave Halter
07c60d7ff6 Fix DEDENT issues in _remove_newline. 2015-01-26 21:17:50 +01:00
Dave Halter
61e2bba380 Tests and implementation to remove the last newline again in the parser tree, to be able to exactly reproduce the parser input. 2015-01-26 21:07:14 +01:00
Dave Halter
446f5b9018 Fix issues with the right count of parsers used. 2015-01-24 20:19:03 +01:00
Dave Halter
4d6afd3c99 Fix fast parser tests. 2015-01-24 00:06:16 +01:00
Dave Halter
d6b3b76d26 First fast parser version that actually let a test pass. 2015-01-19 00:39:51 +01:00
Dave Halter
cf223a71f5 Add a position modifier for the fast parser. Not yet in use though. 2015-01-15 13:57:56 +01:00
Dave Halter
cc64265187 Grammar modifications so that the Python2.7 grammar looks more like the Python 3.4 grammar. 2015-01-13 01:05:13 +01:00
Dave Halter
f59e05f8e7 Switch grammars depending on Python version. 2015-01-12 13:33:44 +01:00
Dave Halter
582b9b01af Get invalid INDENTs working.
The following DEDENT's are removed.
2015-01-12 12:22:57 +01:00
Dave Halter
5c98f6cf04 Suites don't have to contain statements anymore, this makes autocompletion better in certain cases. 2015-01-12 01:11:46 +01:00
Dave Halter
83a94c12c9 Correct global name issues. 2015-01-08 01:20:53 +01:00