Commit Graph
100 Commits
Author SHA1 Message Date
Dave Halter bcf6be0636 Radically rewrote deep_ast_copy. 2015-02-12 02:25:54 +01:00
Dave Halter a12f259a0f Actually remove check_first from deep_ast_copy. 2015-02-11 14:47:28 +01:00
Dave Halter 315c687048 Remove the need for the check_first param in deep_ast_copy. 2015-02-11 14:46:51 +01:00
Dave Halter bc722a70f2 Simplify deep_ast_copy. 2015-02-11 02:16:57 +01:00
Dave Halter 6e5ba3de87 Fix remaining issue siwh the Param refactoring. 2015-02-11 01:40:18 +01:00
Dave Halter cdbe26786a Trying to get ird of the weird param generation in the parser tree. 2015-02-10 15:49:26 +01:00
Dave Halter 8775d90173 Merge the master branch into the dev branch. 2015-02-09 14:41:41 +01:00
Dave Halter 07156b427c Fix some compatibilty issues in the test suite for Python 2.7. 2015-02-09 14:15:25 +01:00
Dave Halter 28d3ba6c04 Fix a test about regex goto, don't know how that one even worked in the first place. 2015-02-09 12:35:20 +01:00
Dave Halter a095f8d9e0 Replace some isinstance checks in the parser tree with .type checks. 2015-02-09 12:27:29 +01:00
Dave Halter a9a3387cb0 Refactor user scope search. 2015-02-05 21:52:57 +01:00
Dave Halter 8125d5f562 Remove asserts and calculate them dynamically. 2015-02-05 20:16:55 +01:00
Dave Halter 0a3797cf6e Small refactorings. 2015-02-05 19:47:26 +01:00
Dave Halter 2dd08594fc Simplify the indent calculation in the fast parser. 2015-02-05 14:37:24 +01:00
Dave Halter abe6c8934c Update the parser pickling protocol version. 2015-02-05 14:19:22 +01:00
Dave Halter d0f1fd5267 Rename Simple -> BaseNode. 2015-02-05 14:18:30 +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 c689573b0b Removed the line_offset from tokenize, we have better ways to modify positions, now. 2015-02-05 14:00:58 +01:00
Dave Halter 59cf1bce5d Delete legacy code from the fast parser. 2015-02-05 13:47:35 +01:00
Dave Halter 4ace58e29e Make get_statement_for_position faster. 2015-02-05 13:35:43 +01:00
Dave Halter a77ecdbed6 Remove param from get_statement_for_position. 2015-02-05 12:28:55 +01:00
Dave Halter 2d9c644ab6 Fixed some minor mocking differences in Python 2 and 3. 2015-02-05 01:25:53 +01:00
Dave Halter 109fdc53e0 Fix the remaining fast parser issues. 2015-02-05 01:13:00 +01:00
Dave Halter b57ee880af Remove assertEqual from tokenize tests, we can do it with just assert, py.test converts all of that automatically. 2015-02-05 00:48:40 +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 c6b818c504 Changed a tokenize test to match the current intended behavior of the tokenizer. 2015-02-05 00:43:25 +01:00
Dave Halter 3a4235eb33 The interpreter is not using the fast parser anymore. 2015-02-05 00:28:54 +01:00
Dave Halter dce952aec6 Fix an issue with omited dedents in the parser. 2015-02-05 00:11:12 +01:00
Dave Halter e1c623d3f3 Python 2 compatibility. 2015-02-04 17:09:18 +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 6cdfecb541 Fix a number of issues in the fast parser around functions with only one statement (no suite) and wrong indentations). 2015-02-02 15:03:57 +01:00
Dave Halter f9fe6b47eb Fix error statement stacks positions. 2015-02-02 10:43:47 +01:00
Dave Halter a4bd412801 Fix an issue with the positions of InstanceNames that used the original position_modifier. 2015-02-02 02:29:39 +01:00
Dave Halter c58cdbbf9b Fix an issue that comes from a combination of property/__slots__/pickle 2015-02-02 00:45:17 +01:00
Dave Halter e913872192 Merged the tokenize is_identifier changes. 2015-02-01 20:32:01 +01:00
Dave Halter 9a0f1363e3 Start removing the print statements that were used for debugging. 2015-02-01 02:32:52 +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 1826f432c8 Fix an issue in the fast parser splitting. 2015-01-30 15:17:38 +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 a3cdec819e Fix the prefix in tokenize, which was the wrong way around. 2015-01-29 17:10:00 +01:00
Dave Halter cf1b2ff54b Function tests now pass with the fast parser. 2015-01-29 15:47:38 +01:00
Dave Halter a221eee02c Fix more issues in the fast parser. 2015-01-29 15:38:38 +01:00
Dave Halter 0a537c05c4 Fix an issue with Function/Flow combination in the fast parser. 2015-01-29 02:24:11 +01:00
Dave Halter dde0e9c7c6 Fix for loop issues in the fast parser. 2015-01-29 01:36:16 +01:00
Dave Halter e412694fa2 Fix issues with flows in the fast parser. 2015-01-28 17:06:18 +01:00
Dave Halter b8c63f366c FastModule seems to be compatible now with the normal Module, because it inherits from it and makes some minor modifications in some cases. 2015-01-28 15:11:53 +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 d0589430bb FastModule should inherit from SubModule, because it has almost all the same properties. 2015-01-28 14:59:00 +01:00
Dave Halter 6ec89e6785 Fix issues with flows. 2015-01-28 13:03:57 +01:00
Dave Halter 5e8f8f7a8d Fix issues with error correction / newline correction. 2015-01-27 12:24:54 +01:00
Dave Halter 62e45aa42b Fix issues with the new newline end_pos positions. 2015-01-27 02:21:05 +01:00
Dave Halter 4a07f97f10 Reenable a few get_code tests. 2015-01-27 01:19:09 +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 cdae250b36 code -> source and also care for added newlines in the fast parser. 2015-01-26 22:01:39 +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 e5d265e845 Add a method Leaf.get_previous, to get previous leafs. 2015-01-26 21:02:56 +01:00
Dave Halter a8943b8a80 Get the position modifiers right. 2015-01-24 20:42:28 +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 8569651bf4 Fast parser simplifications and bug fixes. 2015-01-21 18:34:22 +01:00
Dave Halter 91ab1d0ecd Fix an issue in the fast parser that caused stuff to be parsed always. 2015-01-21 02:03:06 +01:00
Dave Halter 7188105dc7 The fast parser is now in a more readable shape. 2015-01-19 16:21:25 +01:00
Dave Halter ce793b1066 Trying to restructure the fast parser. 2015-01-19 14:49:44 +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 add0cafbf1 Merge pull request #530 from felipeacsi/arch-installation
Updated Arch Linux installation
2015-01-17 13:50:49 +01:00
Dave Halter 01c209dc00 MergedNamesDicts for the parser. 2015-01-16 15:25:58 +01:00
Dave Halter e477fab856 Playing with the fast parser implementation. 2015-01-16 15:23:49 +01:00
Dave Halter 86391268a7 Merge pull request #528 from KenetJervet/parser
Fixed issue #526.
2015-01-16 13:03:56 +01:00
Dave Halter cc7483498c Start using the position modifier. 2015-01-15 14:18:22 +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 c963706418 Delete legacy logic. 2015-01-15 02:19:48 +01:00
Dave Halter e82d51e161 Correct a path in memory check. 2015-01-15 02:03:26 +01:00
Dave Halter 95b518e9fc Use the Python 3.4 parser for docstring types.
We had to switch, because Ellipsis was otherwise not parseable.
2015-01-13 13:17:21 +01:00
Dave Halter e6b9111749 Python 2.7 compatibility. 2015-01-13 02:12:49 +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 09da6ec0d3 Function annotations don't need to be tested in Python 2.7. 2015-01-13 01:00:08 +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 ef72f4fb6c Test the new error correction feature. 2015-01-12 01:27:25 +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 f8570b1f03 Test for error recovery with try statements. 2015-01-09 18:02:15 +01:00
Dave Halter 5334f8dbad Implemented the in operator in a very simple fashion: It returns nothing. 2015-01-09 16:05:09 +01:00
Dave Halter 53b456dff2 Cleaning up. 2015-01-09 01:55:23 +01:00
Dave Halter e8ef3b8ad4 Remove legacy code. 2015-01-09 01:45:09 +01:00
Dave Halter d78a89df51 Move filter_after_position. 2015-01-09 01:37:42 +01:00
Dave Halter 26ecb16e5f CompiledObject.type resembles now the Node.type values. 2015-01-09 01:33:59 +01:00
Dave Halter b75ba1e16c interpreter documentation. 2015-01-08 18:34:55 +01:00
Dave Halter 81c4792349 Simplify the interpreter completion. 2015-01-08 18:30:49 +01:00
Dave Halter ed7500bfaa Delete deprecations from 0.6.0 and 0.5.0. 2015-01-08 18:22:38 +01:00
Dave Halter 7c6a6006fd Delete commented code. 2015-01-08 18:19:54 +01:00
Dave Halter 301b4ca649 Deprecate NotFoundError, because it wasn't used anymore. 2015-01-08 18:17:37 +01:00
Dave Halter 8ec8a74a3f Removed base in completions 2015-01-08 18:02:55 +01:00
Dave Halter 108cab21f4 Added a closure test that would have failed before the names_dict refactoring. 2015-01-08 17:58:24 +01:00
Dave Halter 144c20579b Get rid of get_defined_names in compiled modules. 2015-01-08 17:53:20 +01:00
Dave Halter bd304d33c7 Get rid of Function's get_magic_function_X, they are not used anymore. 2015-01-08 14:17:33 +01:00
Dave Halter 47fc3cbdfe Functions are not exceptions anymore in the name finder. 2015-01-08 14:14:01 +01:00
Dave Halter 0dc61292b9 Remove get_defined_names methods from evaluate representation objects. 2015-01-08 13:42:52 +01:00