Commit Graph

66577 Commits

Author SHA1 Message Date
Alexey Tsvetkov 876d6d209f Minor: move non-JPS MPP IC tests under incremental/mpp dir 2020-04-18 06:05:44 +03:00
Valentin Kipyatkov e1ee75c864 Fix to avoid test flickering (SlicerNullnessGroupingTestGenerated.testInlineFunctionManyCalls()) 2020-04-18 01:25:05 +03:00
Valentin Kipyatkov e6cfced54a Don't collect all usages at once 2020-04-18 01:25:05 +03:00
Valentin Kipyatkov 31a1b2ddd3 No BodyResolveMode.FULL in slicer 2020-04-18 01:25:05 +03:00
Valentin Kipyatkov 91a793d575 Slicer tree view: better highlighting range inside nodes and in the editor 2020-04-18 01:25:04 +03:00
Valentin Kipyatkov 64fec54c48 Slicer: underline element range in addition to bold font (better do it in IDEA code) 2020-04-18 01:25:04 +03:00
Valentin Kipyatkov 03126ba469 Container presentation in slicer tree: no type for properties and show accessor 2020-04-18 01:25:04 +03:00
Valentin Kipyatkov 2ee776a0d8 Container presentation in slicer tree: limit number of parameters shown by 2 2020-04-18 01:25:03 +03:00
Valentin Kipyatkov 3e5820e4c1 Slice tree: shorter container rendering for properties in primary constructor 2020-04-18 01:25:03 +03:00
Valentin Kipyatkov 23ead3c805 Added container text into slicer tests output 2020-04-18 01:25:03 +03:00
Valentin Kipyatkov 2d2d9337ca Do not include line numbers from librarys source into test output otherwise it will change to often when upgrading libs 2020-04-18 01:25:02 +03:00
Valentin Kipyatkov d6e8cdebfb Fixing compilation in bunch 201 2020-04-18 01:25:02 +03:00
Valentin Kipyatkov 411f2c833c Process inline functions from libraries (if sources available) + process source libraries if analysis scope includes them 2020-04-18 01:25:02 +03:00
Valentin Kipyatkov 06de3de1a6 Do not show doc-comment references in data flow 2020-04-18 01:25:01 +03:00
Valentin Kipyatkov 84a786dde3 Renames and test output format improvement 2020-04-18 01:25:01 +03:00
Valentin Kipyatkov 33082d8661 Added missing text in the tree rendering 2020-04-18 01:25:01 +03:00
Valentin Kipyatkov 63095f9ec9 Handling of method references 2020-04-18 01:25:00 +03:00
Valentin Kipyatkov 7dd30eb943 Support other kinds of variables for invoke receiver 2020-04-18 01:25:00 +03:00
Valentin Kipyatkov 5a7f74c250 Extracted method 2020-04-18 01:25:00 +03:00
Valentin Kipyatkov 8a1ea7b45e One more test 2020-04-18 01:24:59 +03:00
Valentin Kipyatkov cc6090347a Handling other types of expressions as invoke receiver 2020-04-18 01:24:59 +03:00
Valentin Kipyatkov bf79c3f279 Minor 2020-04-18 01:24:59 +03:00
Valentin Kipyatkov 9624f8afa3 Flaky test? 2020-04-18 01:24:59 +03:00
Valentin Kipyatkov 67021d23e2 Minor 2020-04-18 01:24:58 +03:00
Valentin Kipyatkov f3b26e1c9a Correct detection of parameter index or receiver from invoke call 2020-04-18 01:24:58 +03:00
Valentin Kipyatkov 83ef8def4d Hacked SliceNullnessAnalyzerBase from IDEA to take into account SliceUsage.isLeaf() and give reasonable and stable results for Kotlin 2020-04-18 01:24:58 +03:00
Valentin Kipyatkov e4d9801388 Process only correct implicit receivers 2020-04-18 01:24:58 +03:00
Valentin Kipyatkov fdfae5260f Parameter to receiver 2020-04-18 01:24:57 +03:00
Valentin Kipyatkov 04d4f7444e Tracking of receiver for incoming lambda's for outflow analysis + better handling of invoke and operator calls 2020-04-18 01:24:57 +03:00
Valentin Kipyatkov 8f01427534 Tracking of incoming lambda's for outflow analysis 2020-04-18 01:24:57 +03:00
Valentin Kipyatkov a09a9a65ff Special handling of inline function to track values from individual calls 2020-04-18 01:24:57 +03:00
Valentin Kipyatkov 269420a0e0 Processing implicit extension receiver usages in outflow processing 2020-04-18 01:24:56 +03:00
Valentin Kipyatkov 5040d37e2f Code refactoring 2020-04-18 01:24:56 +03:00
Valentin Kipyatkov 6928700320 Moving declarations 2020-04-18 01:24:56 +03:00
Valentin Kipyatkov 52ff1c62dd Tracking of implicit receiver from enclosing lambda 2020-04-18 01:24:56 +03:00
Valentin Kipyatkov 4e88e2697c Replaced [LAMBDA OUT] in test data to [LAMBDA CALLS] which is less confusing 2020-04-18 01:24:55 +03:00
Valentin Kipyatkov 7bcd6619cf Tracking inflow of lambda receiver 2020-04-18 01:24:55 +03:00
Valentin Kipyatkov 61d4383cb9 Merged LambdaResultOutflowBehaviour and LambdaCallsBehaviour into one 2020-04-18 01:24:55 +03:00
Valentin Kipyatkov 1e39d4a63c Code refactoring + better handling of incoming data flow to java super methods 2020-04-18 01:24:55 +03:00
Valentin Kipyatkov b5b0fd62a9 Track anonymous function parameters in inbound data flow analysis as well 2020-04-18 01:24:54 +03:00
Valentin Kipyatkov f0d4d7bb86 Added correctness check of test data + fixed huge amount of incorrect code in test data 2020-04-18 01:24:54 +03:00
Valentin Kipyatkov c19a16f1e0 Track lambda parameters in inbound data flow analysis 2020-04-18 01:24:54 +03:00
Valentin Kipyatkov 799b2d7291 Refactoring: abstraction of idea with "lambdaLevel" in slices 2020-04-18 01:24:54 +03:00
Valentin Kipyatkov 03e894f75d Use partial body resolve 2020-04-18 01:24:53 +03:00
Valentin Kipyatkov 86c98b0d62 Refactoring 2020-04-18 01:24:53 +03:00
Valentin Kipyatkov b4b58d1d99 Handling implicit receivers in InflowSlicer 2020-04-18 01:24:53 +03:00
Valentin Kipyatkov 90188ef44f Data flow to/from here: supported expected/actual declarations and extension receivers 2020-04-18 01:24:52 +03:00
Valentin Kipyatkov bfa3fb0589 Do not check scope for super declaration 2020-04-18 01:24:52 +03:00
Valentin Kipyatkov 179b59032a Do not create JavaSliceUsage directly 2020-04-18 01:24:52 +03:00
Valentin Kipyatkov 0b2aff4e70 KT-38003 works for Java implementations of extension method 2020-04-18 01:24:52 +03:00