1
0
forked from VimPlug/jedi
Commit Graph

8156 Commits

Author SHA1 Message Date
Dave Halter
8ff5ca81d2 Make a package out of refactoring 2020-02-25 10:28:27 +01:00
Dave Halter
ff60c0af87 Docstrings 2020-02-25 10:27:36 +01:00
Dave Halter
89398e5c87 Deal a lot better with prefixes in range extractions 2020-02-25 10:23:38 +01:00
Dave Halter
f8d9f498d0 Get a first extract test mostly working 2020-02-24 10:12:38 +01:00
Peter Law
30738a092b Update sith's module docstring to match the available operations 2020-02-24 01:33:46 +01:00
Dave Halter
f527138e6c Extract: Fix param order for methods 2020-02-24 00:19:34 +01:00
Dave Halter
24a4c3ceba Test closure extraction 2020-02-23 23:56:59 +01:00
Dave Halter
48e25c1b9b Extract: Make sure params are not duplicated 2020-02-23 23:22:38 +01:00
Peter Law
f1a9e681ad Ensure comprehensions and generator expressions work 2020-02-23 15:25:28 +00:00
Peter Law
f4cbf61604 Ensure variadic tuples (Tuple[T, ...]) behave like sequences 2020-02-23 14:00:39 +00:00
Peter Law
5e990d9206 Support passing through values for non-annotated tuples 2020-02-23 14:00:16 +00:00
Peter Law
80db4dcf56 Add test to ensure unions work 2020-02-23 14:00:16 +00:00
Peter Law
e557129121 Remove check which doesn't seem to be needed
I'm not sure why I added this, though removing it doesn't seem to
casue any issues. I suspect there might be some oddness if the type
being passed in doesn't match the type expected, though them having
the same number of generic paramters isn't an expecially great way
to validate that.
2020-02-23 14:00:16 +00:00
Peter Law
c15e0ef9b8 Ensure specialised types inheriting from generics work 2020-02-23 14:00:15 +00:00
Peter Law
e455709a31 Add test case for nested generic callables 2020-02-23 14:00:13 +00:00
Peter Law
c03ae0315e Make nested Type[T] annotations work 2020-02-23 13:59:44 +00:00
Peter Law
bc53dabce3 Make tuple generic parameters work 2020-02-23 13:59:44 +00:00
Peter Law
969a8f1fd9 First pass at extending infer_type_vars
This mostly works for the new tests, but doesn't work for:
- tuples (though this seems to be because they lack generic information anyway)
- nested Type[T] handling (e.g: List[Type[T]])
2020-02-23 13:59:44 +00:00
Peter Law
0a7820f6de Add many test cases
While these definitely _ought_ to work on Python 2.7, the annotation
support there is very limited and as Python 2 is deprecated it
doesn't seem worth it.
2020-02-23 13:58:10 +00:00
Dave Halter
da935baa99 Some more extract improvements 2020-02-23 12:06:37 +01:00
Dave Halter
cc8483a07a Fix extract issues when self is involved 2020-02-23 11:50:05 +01:00
Dave Halter
48c4262f66 Start trying to find param names 2020-02-23 01:55:43 +01:00
Dave Halter
d069a4e482 Add a test for extraction in a class 2020-02-23 01:41:51 +01:00
Dave Halter
2061919b64 Get staticmethod working 2020-02-23 01:36:45 +01:00
Dave Halter
a7110a4e08 Get a first classmethod extraction working 2020-02-23 00:40:31 +01:00
Dave Halter
b7be5a4fe2 Extract: Correct newlines for classes and make it possible to be on a return/yield statement 2020-02-23 00:24:34 +01:00
Dave Halter
876109267a Remove is_function_execution, it's not used 2020-02-23 00:16:46 +01:00
Dave Halter
1c0f9e1f30 Extract functions properly out of functions 2020-02-22 21:24:06 +01:00
Peter Law
6efafb348e Extract the annotation name upfront
We almost always need this and this simplifies the code within
each branch. This also means we'll be able to the name to determine
the branching.
2020-02-22 19:42:08 +00:00
Peter Law
36b4b797c1 Add trailing comma 2020-02-22 19:42:08 +00:00
Dave Halter
ce1093406a Get some first extract_function stuff working 2020-02-22 00:04:11 +01:00
Dave Halter
dcffe8e60b Some refactorings and final tests for extract variable 2020-02-21 03:15:40 +01:00
Dave Halter
0516637e8d Fix an extract case about "not" 2020-02-21 03:03:48 +01:00
Dave Halter
3bc66c2f00 Fix some error cases for extract 2020-02-21 02:22:54 +01:00
Dave Halter
742c4370b5 Fix some last extract issues 2020-02-21 01:57:12 +01:00
Dave Halter
292ad9d9ac Enable extracting of parts of nodes 2020-02-21 01:43:36 +01:00
Dave Halter
3457bd77eb Make sure that extract variable works for some ranges 2020-02-20 23:34:09 +01:00
Lior Goldberg
1874e9be81 Remove the word 'class' from annotation_string
Currently, 'foo(x: int)' results with annotation_string="<class 'int'>".
Change this to 'int'.
2020-02-20 09:35:01 +01:00
Dave Halter
3f86d803d2 Fix another special extract case 2020-02-20 01:29:04 +01:00
Dave Halter
26bf2ceb15 Fix refactoring of leaves just before leaves 2020-02-20 00:43:02 +01:00
Dave Halter
bfa15c61f1 Keyword extraction is now working better 2020-02-19 09:25:59 +01:00
Dave Halter
61619c4db1 Test keyword extraction 2020-02-19 09:20:12 +01:00
Dave Halter
50be49544d Move indent_block to common 2020-02-19 09:15:39 +01:00
Dave Halter
b1d3c7ef52 Move indent_block to a separate utils 2020-02-18 18:50:40 +01:00
Dave Halter
7dff25f7c9 Test extracing of base classes 2020-02-17 10:06:40 +01:00
Dave Halter
ab4fe548f2 Handle params better for extract variable 2020-02-17 09:55:11 +01:00
Peter Law
c4cf0d78e1 Add a couple of docstrings
These are based on observation of the outputs of these functions.
2020-02-15 12:25:12 +01:00
Dave Halter
d1f7400829 First implementation of extract variable 2020-02-15 12:17:29 +01:00
Dave Halter
ee8cdb667d Make it possible to test refactoring outputs a bit different 2020-02-15 00:59:26 +01:00
Dave Halter
24114ba631 Remove reorder imports. For now this is not a priority 2020-02-14 23:56:11 +01:00