Commit Graph

504 Commits

Author SHA1 Message Date
Dave Halter
e872d9e073 Script.goto_assignments now always needs a call_path. Otherwise it raises a NotFoundError.
This change makes Jedi's behavior more consistent.
2014-09-04 00:56:58 +02:00
Dave Halter
bcc84820fe Fix issues with unreachable flows.
This benefits static analysis as well as autocompletion: Unreachable code (things like code within 'if 0:') should still be resolveable.
2014-09-03 00:05:37 +02:00
Dave Halter
0ef030848d refactor fast_parent_copy, use new_elements_default to hand in a dictionary, that contains all the generated duplicates. 2014-08-21 13:17:33 +02:00
Dave Halter
f911050300 Rewrote the isistance implementation, so that it works properly with tuples as well as normal classes. 2014-08-20 16:58:19 +02:00
Dave Halter
d6dd7cd55e Move process_precedence_element from the Evaluator to the precedence module. 2014-08-20 15:59:37 +02:00
Dave Halter
7f874620db Start documenting all the py__foo__ methods 2014-08-20 11:31:23 +02:00
Dave Halter
09ca47fa93 Introduce a dedicated isinstance function implementation. 2014-08-19 23:57:59 +02:00
Dave Halter
49163e135c flow_analysis test for isinstance as well as and/or operations. 2014-08-19 01:03:14 +02:00
Dave Halter
89ab0ba137 Fix fast_parent_copy. The caching is now more solid than before (and doesn't produce weird side effects. This also solves an issue with Lambdas. However, by fixing all of this we have broken some other things. 2014-08-15 01:55:43 +02:00
Dave Halter
425290aa8f Fix an issue with partial keyword inputs. 2014-08-14 12:25:00 +02:00
Dave Halter
f743619fb8 Tests for conditions in descriptors. 2014-08-13 14:49:42 +02:00
Dave Halter
cf32e15f65 Remove the old 'is not' logic to detect if not instances and use them to do branch predictions. This is not necessary anymore, since we now support that in a more general way (flow_analysis). 2014-08-12 18:14:03 +02:00
Dave Halter
eeac77d360 Also support the not operator. 2014-08-12 18:09:59 +02:00
Dave Halter
8ed89e8245 implement !=, ==, is, is not operators to work in if statements (they also work in in non if contexts and return a bool value.), includes tests. 2014-08-12 17:59:19 +02:00
Dave Halter
6f018e4884 introduce maybe_docstr in parse_statement, which should have been introduced way earlier. 2014-08-12 17:13:14 +02:00
Dave Halter
fb1dba269a re-enable the interpretation of the None keyword 2014-08-12 14:38:56 +02:00
Dave Halter
469988be9c actually add tests for the flow analysis of variables. 2014-08-12 09:57:00 +02:00
Dave Halter
f1711f8f9c possible direction of branch checks for name resolution. 2014-08-10 13:17:37 +02:00
Dave Halter
01bdd1e4fa Test fixes and for loops need to be handled a awell in flow_analysis. 2014-08-07 15:51:41 +02:00
Dave Halter
0ae9e520c1 flow analysis working for elif statements (even in combination with else) 2014-08-07 15:18:30 +02:00
Dave Halter
743d064e6d exception while using else as a scope 2014-08-07 12:10:31 +02:00
Dave Halter
ee65764c3a more complicated logic working with else 2014-08-07 12:02:08 +02:00
Dave Halter
b7151c1ef9 add a first flow analysis test 2014-08-06 23:35:30 +02:00
Dave Halter
e7e7bd29e8 fix generator tests (multiple yields must be called with an if random. 2014-08-06 12:45:38 +02:00
Dave Halter
23c39eff9a fix lambda issues 2014-08-06 12:40:08 +02:00
Dave Halter
cba100a801 test for #414 which doesn't seem to be failing anymore. 2014-08-04 16:08:47 +02:00
Dave Halter
625e88e851 isinstance checks now also give you type hints in class contexts, fixes #241. 2014-08-04 02:11:30 +02:00
Dave Halter
332a16a27e elements in tuples/lists in docstrings were not executed. 2014-07-31 17:13:56 +02:00
Dave Halter
d09279e0ad change tests that provided wrong instance information 2014-07-31 15:16:24 +02:00
Dave Halter
50fa3a732d actually start checking if the integration tests are instances on both sides of the comparison. This wasnt necessary for just autocompletion, but it's way more important now. 2014-07-31 14:58:32 +02:00
Dave Halter
870abe73d4 Calling an InstanceElement of an Instance of CompiledObject doesn't raise an error anymore. Yes, it's really that complicated. 2014-07-30 19:49:41 +02:00
Dave Halter
3c92d175da using super() in actual executed classes wasn't possible. fixes #421 2014-07-30 11:27:27 +02:00
Danilo Bargen
e8f479172a Implemented dynamic superclasses 2014-07-27 14:11:48 +02:00
Dave Halter
6d99e639cd Merge branch 'add-numpydoc-support' of git://github.com/immerrr/jedi into dev 2014-07-27 11:23:39 +02:00
Pawel Palucki
d359f5d043 Sphinx oneline param type declaration feature
allows for type definition in ":param keyword"
2014-07-26 22:15:56 +02:00
Danilo Bargen
efebb2d6d0 Added tests for random.choice 2014-07-26 17:40:08 +02:00
Danilo Bargen
2a1c108bbf Fixed whitespace problems in completion tests 2014-07-26 17:39:05 +02:00
Dave Halter
0dea47b260 def/class keywords after an opening parentheses led to empty arrays without closing brackets, tests & fixes #416 2014-07-18 12:53:06 +02:00
Dave Halter
3be5220bf1 parentheses checks in the fast parser (tokenizer) have been improved to really cover all cases. real fix for davidhalter/jedi-vim#288 2014-07-18 10:59:28 +02:00
Dave Halter
03226783dd parentheses should be ignored when calculating the indent of a new block in the fast parser, fixes davidhalter/jedi-vim#288 2014-07-18 09:11:06 +02:00
Dave Halter
53a32d8304 test for parser issues with parentheses indentation, see davidhalter/jedi-vim#288 2014-07-15 17:05:16 +02:00
Dave Halter
749d0121fc change test results, because of inserts in another test file 2014-07-02 13:15:36 +02:00
Dave Halter
23008d8a19 use scope_names_generator in completion api as well. hopefully the last __file__ related issue :) 2014-07-02 13:12:37 +02:00
Dave Halter
8d63e6f6e7 somehow temporary solution to enable completion of __file__ 2014-07-01 15:10:32 +02:00
Dave Halter
f7a384bf18 fix a multi line issue of var_args with an error token or newline in the beginning. 2014-07-01 12:45:34 +02:00
Dave Halter
5b7c869323 types also add to completions, also for compiled objects. removed a few lines of code that complicated the process as well. 2014-06-28 12:09:43 +02:00
Dave Halter
7d73e571bb json.load[s] shouldn't return any results. fixed by overwriting the method 2014-06-27 11:56:40 +02:00
Dave Halter
cf1fd691da custom copy.copy and copy.deepcopy implementations to not confuse autocompletion (just return the first param) 2014-06-27 11:49:26 +02:00
Dave Halter
8cd7f9a288 std -> stdlib 2014-06-27 11:24:23 +02:00
Dave Halter
aba4a16ae3 fix indexing issues for multiple index options 2014-06-27 11:23:46 +02:00