Yan Zhulanow
5c419fc629
Evaluator: New implementation for variable finder
...
Support both old and new receiver variable conventions in variable finder.
2019-02-25 14:43:53 +03:00
Yan Zhulanow
ea462091c4
Support new convention for local variables name mangling: '$receiver' -> '$this$<label>' (KT-26913)
2019-02-25 14:43:53 +03:00
Ilmir Usmanov
1777849ff3
Generate correct linenumber for the debugger to see the return value
...
of suspend function.
#KT-20322 Fixed
2019-02-22 17:37:32 +03:00
Yan Zhulanow
ef08110354
Evaluator: Render inline class values using its toString() implementation (KT-27414)
2018-12-12 21:40:46 +09:00
Yan Zhulanow
9ec321b918
Update debugger test data, fix the current behavior
2018-12-12 21:40:45 +09:00
Yan Zhulanow
4b4d8dd660
Fix breakpoints for the same inline function nested calls (KT-22366)
...
This commit changes the format of the synthetic local variables for inline functions.
2018-12-12 21:40:44 +09:00
Yan Zhulanow
e12af0e2d1
Fix evaluation for captured inline classes (KT-28487)
2018-12-12 21:40:44 +09:00
Yan Zhulanow
27ea02929a
Fix evaluation for static interface methods declared in Java (KT-23585)
2018-12-12 21:40:43 +09:00
Yan Zhulanow
3d7b503cd6
Fix source mapping for stepping into package facades from libraries (KT-28028)
2018-12-12 21:40:43 +09:00
Yan Zhulanow
c88d8a5e0d
Evaluate: Support synthetic 'field' variable evaluation (KT-28342)
2018-12-12 21:40:43 +09:00
Yan Zhulanow
ada71ce3cd
Evaluate: Use '<name>_field' syntax for field value evaluation (KT-14075)
2018-12-12 21:40:42 +09:00
Nikolay Krasko
6198641cb7
Fix test after adding line with force ranking directive
2018-11-01 12:24:03 +03:00
Nikolay Krasko
7009b261d6
Don't rank local classes (KT-27712)
...
Allow enable ranking even for single source file in tests
#KT-27712
2018-10-26 18:02:36 +03:00
Yan Zhulanow
b8c756a4e8
Debugger: Remove false-positive assertion (KT-24343)
2018-10-24 20:12:25 +03:00
Yan Zhulanow
713dc589e0
Debugger: Allow to evaluate private properties from companion objects (KT-26795)
2018-10-24 20:12:24 +03:00
Yan Zhulanow
fee0cfcecb
Debugger: Add a stepping test for inline classes (KT-26798)
2018-10-24 20:12:23 +03:00
Stanislav Erokhin
4ca0c60066
Temporary specify type explicitly for sequence method in debugger tests.
2018-09-19 15:46:24 +03:00
Ilya Gorbunov
1b889c976a
Use new sequence builders in tests
...
Coroutine tests will fail when LV=1.2 because there're no such builders
in kotlin.coroutines.experimental.
#KT-26678
2018-09-16 23:30:36 +03:00
Yan Zhulanow
64e85e8a0c
Support new $this_<label> field naming convention in debugger
2018-09-11 16:41:21 +03:00
Roman Elizarov
e2713501ce
Rename SuccessOrFailure to Result and hide Failure from ABI
...
* The members of Result are isSuccess, isFailure, exceptionOrNull, getOrNull
* The rest of API is implemented via inline-only extensions
* There are two internal functions to hide detailed mechanics of an internal
Result.Failure class: createFailure and throwOnFailure
* Result.toString is explicit: either Success(v) or Failure(x)
See KT-26538
2018-09-09 11:34:31 +03:00
Alexey Tsvetkov
49bddcd220
Use release coroutines in evaluate tests
2018-08-30 14:57:12 +03:00
Ilya Gorbunov
d57e1bb68b
Migrate stepping and evaluation tests to the new coroutine API
2018-08-30 14:50:31 +03:00
Vitaliy.Bibaev
568a664491
Move test classes into 'streams' package in the tiny app
2018-08-20 05:18:01 +03:00
Vitaliy.Bibaev
d4795c0e5d
Add generated tests for collections/java streams
2018-08-20 05:18:01 +03:00
Vitaliy.Bibaev
cf2c2ed802
Move sequence test data into 'debugger/tinyApp/src/streams/sequence'
2018-08-20 05:18:01 +03:00
Vitaliy.Bibaev
895e78d180
Move test data to tinyApp directory
2018-08-20 05:18:00 +03:00
Ilmir Usmanov
300876348a
Fix line numbers generation for coerced primitives
...
in coroutines
#KT-25076: Fixed
2018-08-15 13:47:45 +03:00
Yan Zhulanow
a2fdf7d47d
Evaluator: Support when expressions (EA-119639)
2018-07-12 20:36:41 +03:00
Yan Zhulanow
115356b990
Eval4J: Do not report certain kinds of exceptions to EA
2018-07-12 20:36:40 +03:00
Yan Zhulanow
5f43808cfd
Revert "Debugger: Fix breakpoints and stepping for inline-only function lambda arguments (#KT-23064)"
2018-06-08 19:37:20 +03:00
Yan Zhulanow
4dfcb72fa1
Print source file location/contents if possible (EA-120038)
2018-06-08 19:37:20 +03:00
Yan Zhulanow
81f3346329
Evaluate: Fix annotation value evaluation (#KT-23058)
2018-04-02 19:16:46 +03:00
Yan Zhulanow
966480a155
Debugger: A dirty fix for setting breakpoints inside finally {} in case if exception is thrown from try {} (#KT-22654)
2018-04-02 19:14:28 +03:00
Yan Zhulanow
eec9c6bffa
Debugger: Fix breakpoints and stepping for inline-only function lambda arguments (#KT-23064)
2018-04-02 19:14:14 +03:00
Natalia Selezneva
19e7002d02
Evaluate Expression: fix ClassNotFoundException for primitives and arrays
2018-02-14 14:40:31 +03:00
Natalia Selezneva
dbd7ceb5fd
Fix Evaluate Expression for inline functions from multifile package class.
...
Find main class generated for debugger by its name instead of relativePath length.
#KT-22311 Fixed
2018-01-16 16:00:32 +03:00
Nikolay Krasko
449fee74e8
Skip all same line locations when stepping over inline call (KT-20351)
...
#KT-20351
2017-12-26 12:46:45 +03:00
Nikolay Krasko
f39250c9a2
Fix irrelevant additional stops on breakpoint on line with inlines (KT-21945)
...
#KT-21945 Fixed
2017-12-26 12:46:45 +03:00
Nikolay Krasko
c5886bc7a2
Remove sleep() from soSuspendableCallInEndOfFun and guarantee suspending
2017-12-26 12:46:45 +03:00
Nikolay Krasko
a3028beca9
Fix smart step into to Kotlin SAM adapter (KT-21538)
...
#KT-21538 Fixed
2017-12-18 11:50:49 +03:00
Nikolay Krasko
6456f4ed98
Test step into for Java constructor with SAM conversion
...
Additional test for KT-21538
#KT-21538 Fixed
2017-12-15 16:14:50 +03:00
Nikolay Krasko
d6cface66f
Make isFromJava check work for SAM adapter extension descriptors (KT-21538)
...
Consider all callable descriptor in JavaClassDescriptor to be from Java.
This is used to check if smart step into should be intercepted by Kotlin
handler or delegated to Java.
#KT-21538 Fixed
2017-12-15 16:14:50 +03:00
Nikolay Krasko
57d62eb74a
Document error behaviour of evaluate expression lost sometime
2017-12-05 16:07:54 +03:00
Yan Zhulanow
43a1162b25
Evaluate: Fix for evaluating local variables captured by an inline function (KT-17514)
2017-10-16 21:25:44 +03:00
Yan Zhulanow
79b2b40289
Allow access to effectively invisible declarations in evaluator (KT-18775)
2017-09-15 17:54:46 +03:00
Nikolay Krasko
d8c20ed9c0
Fix debugger test in 172 (KT-18848)
...
#KT-18848 Fixed
2017-08-10 22:05:49 +03:00
Nikolay Krasko
1ef5362edc
Fix breakpoints from Kotlin file placed in irrelevant class (KT-19429)
...
State that there're no locations in given file, if all locations for
line were filtered out because of wrong file name. Need this because
if we throw exception, other positions managers may return locations
without explicit check for file type or file name.
See PositionManagerImpl.java
#KT-19429 Fixed
2017-08-03 13:11:06 +03:00
Nikolay Krasko
f664ffb06b
Check correspondent call on end token for better step over (KT-18949)
...
#KT-18949 Fixed
2017-07-18 14:39:54 +03:00
Nikolay Krasko
d282f14eac
Don't add double linenumber when return expression is absent (KT-18949)
...
#KT-18949 Fixed
2017-07-18 14:39:54 +03:00
Nikolay Krasko
ce4f923ba0
Replace return with nop to avoid merging line instructions (KT-18949)
...
Dex ignores subsequent line numbers for same instructions and interprets
instruction after inline as if they were inlined. This makes debugger
behaves as if there's nowhere to stop on line with breakpoint.
This also makes stepping through inline function consistent with
non-inline analog. In both context debugger now stops on '}'.
#KT-18949 Fixed
#KT-17120 Fixed
2017-07-18 14:39:54 +03:00