Commit Graph
100 Commits
Author SHA1 Message Date
Dave Halter 24903739f2 A first implementation of call signatures. 2014-12-05 16:05:54 +01:00
Dave Halter ab254bbcba Call signature search progress. 2014-12-05 00:23:59 +01:00
Dave Halter 24c7142810 Fix issues with scope ordering in classes/functions. 2014-12-04 18:49:09 +01:00
Dave Halter 774ade955d Fixing for loop additions. 2014-12-04 17:58:01 +01:00
Dave Halter a96d1b8d0f fix something with not/- prefixes. 2014-12-04 17:51:14 +01:00
Dave Halter 478acf8ccf partial is working partially now with the new parser, because invalid statements are not possible anymore (two times **kwargs) 2014-12-04 14:29:37 +01:00
Dave Halter 8f1002218d Very temporary solution for doing deep_ast_copy. 2014-12-04 11:19:33 +01:00
Dave Halter aa9057be38 Small fix for builtins. 2014-12-04 02:01:30 +01:00
Dave Halter 1725abb1fd Fix issues with docstrings. 2014-12-03 20:30:03 +01:00
Dave Halter f1431cef40 Decorator fixes. 2014-12-03 17:09:30 +01:00
Dave Halter 09ad3411da Goto fixes. 2014-12-03 17:01:29 +01:00
Dave Halter 6314b80abd Some goto refactorings. 2014-12-03 16:52:05 +01:00
Dave Halter b2267d3878 Fix usages. 2014-12-03 16:34:31 +01:00
Dave Halter 6bf154de5e Better goto for imports, which helps usages. 2014-12-03 16:15:31 +01:00
Dave Halter 536c188192 Change get_self_vars. Now using py__mro__ to avoid recursions. 2014-12-03 13:04:53 +01:00
Dave Halter b9e7a2eb95 Fix assert issues in combination with comprehensions. 2014-12-02 17:55:42 +01:00
Dave Halter 5f89ceb385 Add the type attribute to all classes in the tree. Because nodes have them as well. 2014-12-02 17:50:55 +01:00
Dave Halter 425741e285 Fix assertion/isinstance type information. 2014-12-02 17:45:19 +01:00
Dave Halter cf0407e164 Add 'if isinstance' type information. 2014-12-02 17:34:36 +01:00
Dave Halter 99febfe6c2 Fixed a very nasty bug in deep_ast_copy. 2014-12-02 04:19:22 +01:00
Dave Halter 235672efc1 Fix an issue for stdlib regex completion. deep_ast_copy had a bug and also changed the way how decorators work. 2014-12-01 18:09:21 +01:00
Dave Halter 2515d283be __getitem__ in instances. 2014-12-01 15:41:13 +01:00
Dave Halter 0ab9d331f8 Issues with dictionary/list/tuple literal methods. 2014-12-01 15:36:36 +01:00
Dave Halter e51a393e4c Fix reversed. 2014-12-01 12:41:47 +01:00
Dave Halter 3cc4da28ed Fix lambda_nocond. 2014-12-01 11:56:28 +01:00
Dave Halter bcd998ae02 Lambdas are own namespaces and deserve their own used_names dictionary in the parser. 2014-12-01 11:49:52 +01:00
Dave Halter 7c9de1fbeb Some class lambdas tests too assure that they are working well with instances. 2014-12-01 11:36:19 +01:00
Dave Halter 50752df6dd Fix an issue with combinations of InstanceElement and Lambdas. 2014-12-01 11:26:35 +01:00
Dave Halter 88853c78f4 Get lambdas mostly working. 2014-12-01 02:47:48 +01:00
Dave Halter 4ee5ad4ce3 iterating list comprehensions should be possible. 2014-12-01 01:08:50 +01:00
Dave Halter ed1915eea0 Fixes for goto on list comprehensions. 2014-12-01 01:02:41 +01:00
Dave Halter 68bd9160e2 Fixed list comprehension name lookups. 2014-12-01 00:08:27 +01:00
Dave Halter 3928f466cf Fix positioning of the user statements. 2014-11-29 16:20:12 +01:00
Dave Halter cd7044cae3 Don't use NotFoundError anymore, since it's very ambiguous what that would imply. 2014-11-29 15:57:18 +01:00
Dave Halter 0184e80120 dynamic_params correction. 2014-11-29 13:49:50 +01:00
Dave Halter 417db4e83f suites without indent can also be deleted. 2014-11-29 13:30:21 +01:00
Dave Halter a7560069b0 Fixes for issues with empty compound_stmt. We always remove a whole stmt and just a funcdef as an error correction. 2014-11-29 13:25:31 +01:00
Dave Halter 3fb1934462 Fix invalid test issues. 2014-11-29 01:35:26 +01:00
Dave Halter 2b912cb75a The func/class dictionaries must be changed if some scopes are removed by the parser's error recovery. 2014-11-29 01:29:21 +01:00
Dave Halter 43c01afcfc invalid.py test changes. Error recovery will be different from the old one. 2014-11-28 21:58:44 +01:00
Dave Halter 2c684906e3 Working with dedents in error recovery. 2014-11-28 21:33:40 +01:00
Dave Halter 31600b9552 classes and functions are new statements and should never get removed by the error recovery. 2014-11-28 02:44:34 +01:00
Dave Halter 128dbd34b6 Check parentheses level in tokenizer. 2014-11-28 02:14:38 +01:00
Dave Halter e1d6511f2f Trying to move the indent/dedent logic back into the tokenizer. 2014-11-28 02:04:04 +01:00
Dave Halter 97516eb26b The new tokenizer is more or less working now. Indents are calculated as they should 2014-11-27 16:03:58 +01:00
Dave Halter c0df7003a5 Allow both the old tokenizer and the new one (able to toggle). 2014-11-27 01:12:49 +01:00
Dave Halter c7862925f5 Small tokenizer changes & tokens now have a prefix attribute instead of preceeding_whitespace. 2014-11-27 01:10:45 +01:00
Dave Halter 02cb1fef95 Rename test_tokenizer to test_tokenize. 2014-11-26 16:16:58 +01:00
Dave Halter cc1098b93c Fix a few tokenize tests and merge them back together. 2014-11-26 16:09:28 +01:00
Dave Halter f43c371467 Merge @joel-wright's whitespace tokenizer branch. Thanks! 2014-11-26 15:56:11 +01:00
Dave Halter 427056a22d Change the pgen2 parser and its driver so that it can be accessed easily from the outside. This is a minor change and will allow Jedis tokenizer to work with pgen2. 2014-11-26 15:38:53 +01:00
Dave Halter cd1e07a532 The now passing on_import tests should not worsen the performance of the other tests. 2014-11-26 03:11:22 +01:00
Dave Halter f24a3bf997 Fix on_import tests. 2014-11-26 03:07:41 +01:00
Dave Halter 1326a2137d Change the backwards tokenizer that keywords always stop. 2014-11-26 02:32:13 +01:00
Dave Halter a940c31a86 Improvments to on import completion. 2014-11-26 02:13:24 +01:00
Dave Halter 149b4d8ad5 Import completion on syntactically correct imports. 2014-11-26 01:15:40 +01:00
Dave Halter 499c62df43 Fixes for os.path import 2014-11-25 19:39:14 +01:00
Dave Halter 5d82b11f59 First implementation to be ready to complete corrupt imports. Working ok. 2014-11-25 19:35:27 +01:00
Dave Halter e72eaf7a59 on import completion preparations. 2014-11-25 15:10:36 +01:00
Dave Halter 52d4aaebbe small fix for docstring parsing. 2014-11-25 15:10:19 +01:00
Dave Halter 5de84afff4 Fix __getitem__ 2014-11-24 02:10:02 +01:00
Dave Halter fae0a7b0c4 Small fixes for past mistakes. 2014-11-24 01:56:54 +01:00
Dave Halter db76bbccc5 Trying to change the symbols in node. They are now strings.
With this change we are finally able to get rid of parser/pytree.py
2014-11-24 01:52:41 +01:00
Dave Halter 9f45f18ad1 Added a grammar param to the parser. 2014-11-24 01:10:39 +01:00
Dave Halter c152a1c58b Actually replace tree with representation (in all the imports). 2014-11-23 19:46:52 +01:00
Dave Halter 1fbc4c9196 Change parser.representation to parser.tree. It's shorter and says more. 2014-11-23 19:35:46 +01:00
Dave Halter ac41c31015 Removed more of the old parser representation code. 2014-11-23 19:33:18 +01:00
Dave Halter 9b54541cae Remove quite a bit of the old parser representation logic. 2014-11-23 19:26:30 +01:00
Dave Halter 0f21d38e2c Remove the old parser. 2014-11-23 19:17:50 +01:00
Dave Halter 267016f533 Function for evaluating functions with already executed arguments. 2014-11-23 19:12:25 +01:00
Dave Halter 8adfc47297 Fix some issues with params. 2014-11-23 12:22:03 +01:00
Dave Halter c10ec4f876 star arg iteration improved. 2014-11-23 12:05:19 +01:00
Dave Halter f1cbd45575 Usages are pretty solid now except for parser issues. 2014-11-22 15:43:23 +01:00
Dave Halter b82e1e28e5 Get at least some usages stuff right. 2014-11-22 02:05:36 +01:00
Dave Halter 22fbcf6c77 More goto improvements. 2014-11-21 15:45:17 +01:00
Dave Halter eb0bfb4381 get_code in Definition.description should not return first prefix. 2014-11-21 15:33:38 +01:00
Dave Halter f604066288 First small implementation of goto. 2014-11-21 14:21:00 +01:00
Dave Halter fd16dfe2c7 Fix the first part of sys path checks. 2014-11-21 01:46:18 +01:00
Dave Halter 11fa71bac8 Fixes for nested star imports. 2014-11-20 14:56:47 +01:00
Dave Halter 3b7454e294 copy fixes. 2014-11-20 14:51:01 +01:00
Dave Halter 83b09f6c1e Small issue with is_definition and params. Found by looking at stdlib/random.choice tests. 2014-11-20 14:48:34 +01:00
Dave Halter cc465364d3 Fixes towards better MergedArray and partial functions. 2014-11-20 13:33:05 +01:00
Dave Halter a6e1348757 type implementation. 2014-11-20 12:31:11 +01:00
Dave Halter f2e3a3d090 Just rebuilt reversed. 2014-11-20 11:56:58 +01:00
Dave Halter 53c2a1679c Fix types tests. 2014-11-20 11:16:52 +01:00
Dave Halter 2c3a7b6d6c Imports are not Statements. 2014-11-20 02:29:24 +01:00
Dave Halter 164518b993 Get docstrings working. 2014-11-20 02:19:01 +01:00
Dave Halter ce5d428d22 At least functions generate docstrings again. 2014-11-20 01:37:18 +01:00
Dave Halter 22b288fc73 Change docstring test function names, so that dynamic param completion doesn't interfere (especially because some of those files still generate parser errors). 2014-11-20 00:35:48 +01:00
Dave Halter b5418d9d73 Small issue with dynamic params. 2014-11-20 00:25:03 +01:00
Dave Halter e6364fdd8b Fix os.path issues. 2014-11-19 18:40:28 +01:00
Dave Halter ba0e61d99f Star imports are now part of the ModuleWrapper. 2014-11-19 18:09:49 +01:00
Dave Halter 08bdcfb8ca Small issue with relative imports that don't contain a path after from. 2014-11-19 15:22:18 +01:00
Dave Halter aeaf073ca2 Move some tests that targeted completion on import statements into a separate file. 2014-11-19 14:14:27 +01:00
Dave Halter bb9d6b4832 Temporarily disable on import completion. Not sure if we're going to do it with the normal parser. 2014-11-19 13:24:45 +01:00
Dave Halter c71646a9a0 Fixed relative imports. 2014-11-19 13:13:06 +01:00
Dave Halter 6c5f3419ff 'as' test and implementation for ImportName. Working pretty well. 2014-11-19 13:07:08 +01:00
Dave Halter e630eeb397 Care for import aliases better. 2014-11-19 12:45:39 +01:00
Dave Halter 1c240e75d3 Replace get_all_import_names with a leaf search method in Simple. 2014-11-19 01:31:08 +01:00
Dave Halter bab6788b42 split and improved Import*._paths 2014-11-19 00:45:20 +01:00