Commit Graph

13194 Commits

Author SHA1 Message Date
Natalia Ukhorskaya e805478d6c Get call expression type from compile time value if possible 2013-12-05 15:22:00 +04:00
Natalia Ukhorskaya e6c442ba04 Remove set of PROCESSED flag in updateRecordedType 2013-12-05 15:21:59 +04:00
Natalia Ukhorskaya 17152c39e0 Tear down for test 2013-12-05 15:21:59 +04:00
Natalia Ukhorskaya 53a5264aaf Use type from compile time value for binary expression 2013-12-05 15:21:58 +04:00
Natalia Ukhorskaya 6331dd2308 Fix toFloat in stdlib 2013-12-05 15:21:57 +04:00
Natalia Ukhorskaya cbcca6c08e Support IntegerValueTypeConstant in java backend 2013-12-05 15:21:57 +04:00
Natalia Ukhorskaya f329e245ad Support IntegerValueTypeConstant in js backend 2013-12-05 15:21:56 +04:00
Natalia Ukhorskaya 2a023c16a9 Use type from compile time value for prefix expression 2013-12-05 15:21:55 +04:00
Natalia Ukhorskaya 9c176ddaa8 Warning for integer overflow 2013-12-05 15:21:55 +04:00
Natalia Ukhorskaya b4b7988eec Refactoring 2013-12-05 15:21:54 +04:00
Natalia Ukhorskaya a99ce06e78 Move methods 2013-12-05 15:21:53 +04:00
Natalia Ukhorskaya 8da528a018 Add common method to parse char value 2013-12-05 15:21:53 +04:00
Natalia Ukhorskaya 888b747feb Rename 2013-12-05 15:21:52 +04:00
Natalia Ukhorskaya f996860f83 Move methods 2013-12-05 15:21:52 +04:00
Natalia Ukhorskaya 02e19ea8fd Add compileTimeConstant to checkConstantExpressionType method 2013-12-05 15:21:51 +04:00
Natalia Ukhorskaya 33d973f016 Delete DoubleValueTypeConstructor 2013-12-05 15:21:51 +04:00
Natalia Ukhorskaya d63f6843c8 Merge ConstantExpressionEvaluator and CompileTimeConstantResolver 2013-12-05 15:21:50 +04:00
Natalia Ukhorskaya e6923ba29e create StringValue only for primitive compile time values 2013-12-05 15:20:23 +04:00
Natalia Ukhorskaya 9593edc6e7 Rename Unary(Binary)OperationKey 2013-12-05 15:20:22 +04:00
Natalia Ukhorskaya 0bf7b60382 Generate map for ConstantExpressionEvaluator 2013-12-05 15:20:21 +04:00
Natalia Ukhorskaya 0bffa9f0ac Improve creation of compile constants for equals and compareTo 2013-12-05 15:20:20 +04:00
Natalia Ukhorskaya cbe04a6adf Simplify if (..==null) {return null} 2013-12-05 15:20:19 +04:00
Natalia Ukhorskaya 06cb48e300 Add inner visitor for StringEntries 2013-12-05 15:20:19 +04:00
Natalia Ukhorskaya dd0122a482 Rewrite evaluator to kotlin. Small refactoring 2013-12-05 15:20:18 +04:00
Natalia Ukhorskaya e23ef2dc98 Record compile time constants to trace 2013-12-05 15:20:16 +04:00
svtk 1bd63fefa4 Support equlas in ConstantExpressionEvaluator 2013-12-05 15:20:14 +04:00
svtk 32299a7b9b Resolve fake call for 'equals(Any?)' with actual right expression instead of fake one 2013-12-05 15:20:13 +04:00
Natalia Ukhorskaya 1d5d5486ce Support compareTo in ConstantExpressionEvaluator 2013-12-05 15:20:12 +04:00
Natalia Ukhorskaya 08d80bbb16 Rewrite toInt and similar expression like unary expressions 2013-12-05 15:20:10 +04:00
Natalia Ukhorskaya 96dc8b42bb Support for unary expressions 2013-12-05 15:20:08 +04:00
Natalia Ukhorskaya b7b957ffd2 Deparentesize expression in ConstantExpressionEvaluator 2013-12-05 15:19:58 +04:00
Natalia Ukhorskaya 210899af22 Support && and || in ConstantExpressionEvaluator 2013-12-05 15:19:55 +04:00
Natalia Ukhorskaya f8f55799b9 Support or, and, xor and etc in ConstantExpressionEvaluator 2013-12-05 15:19:49 +04:00
Natalia Ukhorskaya 41387c3544 Support plus, minus, div, mod, multiply in ConstantExpressionEvaluator 2013-12-05 15:19:46 +04:00
Natalia Ukhorskaya 50d29e0526 Support string templates in ConstantExpressionEvaluator 2013-12-05 15:19:37 +04:00
Natalia Ukhorskaya c56c2263f0 Use propagation of constant values in evaluator 2013-12-05 15:19:30 +04:00
Natalia Ukhorskaya 0b1dd2d2be Support toInt, toChar and etc as CompileTimeConstants 2013-12-05 15:19:26 +04:00
Natalia Ukhorskaya f218bd1df2 Add NotNull annotations 2013-12-05 15:19:23 +04:00
Natalia Ukhorskaya 9dcee96734 Move test methods to separate class 2013-12-05 15:19:22 +04:00
Natalia Ukhorskaya c437b8c4dc Rename files 2013-12-05 15:19:22 +04:00
Natalia Ukhorskaya 64f8556a76 Extract evaluator from AnnotationResolver 2013-12-05 15:19:21 +04:00
Andrey Breslav 9efa604cff Revert 4ca90e9c68 2013-12-05 14:04:50 +04:00
Andrey Breslav d665146e9a No real need to check whether expressions have already been marked 2013-12-05 13:29:54 +04:00
Andrey Breslav 0e1ccc4525 Rename parameter 2013-12-05 13:28:41 +04:00
Andrey Breslav 4ca90e9c68 Proper instructions for elvis operator
We should not mark elvis operator unused, for the rhs may have desired side-effects
2013-12-05 13:28:41 +04:00
Andrey Breslav 3629a539e4 Smoke test data fixed 2013-12-05 13:28:40 +04:00
Andrey Breslav 6df3a3042c Properly handle the case of backing field access qualified with 'this' reference 2013-12-05 13:28:40 +04:00
Andrey Breslav 5b3bc7f839 Print instructions for functions in classes 2013-12-05 13:28:40 +04:00
Andrey Breslav 853ebe3436 Do not print trailing whitespace in test data 2013-12-05 13:28:39 +04:00
Andrey Breslav 87879ba654 Test data fixed: mark() instructions added 2013-12-05 13:28:39 +04:00