Commit Graph

404 Commits

Author SHA1 Message Date
svtk ad5e3abbb4 Merge branch 'master' of ssh://git.labs.intellij.net/jet 2011-08-05 17:51:24 +04:00
svtk 671b8913ed frontend bugs fixed:
fun f(): Int = "s" //was ok
  fun g(): Int { if (1 < 2) {} else {} }//was ok
  fun h(): Int { val a = 1 } //was ok
2011-08-05 17:43:32 +04:00
Andrey Breslav 4c8aec3b1b Compile-time constants 2011-08-03 14:05:07 +04:00
Andrey Breslav e397f880d7 Typos 2011-07-27 10:10:47 -07:00
Dmitry Jemerov 20417a4a04 fixed for compatibility with current IDEA 2011-07-27 18:23:58 +02:00
Dmitry Jemerov 88b0a7a45e normalize line breaks in tests 2011-07-27 02:49:24 +02:00
Dmitry Jemerov a99bad7e47 don't crash when appending an array to StringBuilder 2011-07-19 23:37:52 +02:00
Dmitry Jemerov cfca58bc06 support explicit calls to some intrinsic functions 2011-07-15 19:26:05 +02:00
Dmitry Jemerov 3592aff812 methods on objects should always be called via invokevirtual() and not invokeinterface() 2011-07-15 16:31:00 +02:00
Andrey Breslav 85fbe4ce90 isVariableReassignment for ++ and -- 2011-07-15 17:49:26 +04:00
Dmitry Jemerov 8b1118f907 support augmented assignment when ordinary binary operation method is overloaded 2011-07-14 20:36:15 +02:00
Dmitry Jemerov c88e3a1602 call overloaded *Assign methods for augmented assignment 2011-07-14 20:21:32 +02:00
Dmitry Jemerov 8a6ccdfbf4 support operator overloading for unary methods 2011-07-14 19:22:27 +02:00
Dmitry Jemerov e316989706 generate calls to overloaded binary operators and infix calls 2011-07-14 19:22:25 +02:00
Andrey Breslav fe6eed2913 isVariableReassignment 2011-07-14 21:20:45 +04:00
Dmitry Jemerov ad2b15a5bc enum constant constructors 2011-07-12 19:26:06 +02:00
Dmitry Jemerov f44ac29cde simplest case of enum classes 2011-07-12 19:26:05 +02:00
Dmitry Jemerov a09e06b3d4 string templates 2011-07-12 16:34:50 +02:00
Dmitry Jemerov 8c0c0f9d6c generate no-arg typeinfo 2011-07-12 13:41:57 +02:00
Dmitry Jemerov b95219913a namespace property initializers are written directly to backing fields 2011-07-12 13:33:33 +02:00
Andrey Breslav b41e863d27 JET-142 Support string templates:
Old literals wiped out
2011-07-12 14:07:15 +04:00
Andrey Breslav c9b2242c2b Tests fixed 2011-07-08 21:39:44 +04:00
Dmitry Jemerov 8f71c188e9 correctly generate supertypes of class objects and object literals 2011-07-08 18:29:54 +02:00
Andrey Breslav d4020a422b JET-180 Rename typeof to typeinfo, type or make it a function 2011-07-08 20:27:59 +04:00
Dmitry Jemerov c302571bb2 test that fails 2011-07-08 13:41:01 +02:00
Dmitry Jemerov a691de74bc predicate operator implemented 2011-07-08 13:12:56 +02:00
Dmitry Jemerov fc9f1eec4f TypeInfo.getClassObject(), for now implemented via reflection 2011-07-08 12:48:37 +02:00
Dmitry Jemerov dac522d7a9 use standard generateTypeInfo() call in pushTypeArguments() 2011-07-08 12:48:37 +02:00
Dmitry Jemerov 4e48e527b1 initial implementation of class objects 2011-07-08 12:48:36 +02:00
Andrey Breslav 704f153a31 JET-174 Make continue work the same way in all contexts inside when
Guards are removed. Continue is not supported yet.
2011-07-07 17:18:29 +04:00
Dmitry Jemerov d42eedb0e0 support property access in pattern matching expressions 2011-07-06 20:17:38 +02:00
Dmitry Jemerov 8d28105a9e support multiple conditions on a 'when' entry 2011-07-06 19:28:00 +02:00
Dmitry Jemerov 889345e7f7 initial support for binding patterns in pattern matching (very fragile in terms of stack manipulation :( ) 2011-07-06 18:39:18 +02:00
Dmitry Jemerov 50a1eeeb59 support for calls in pattern matching 2011-07-06 16:30:17 +02:00
Andrey Breslav e0d597a1bc JET-140 Change function type syntax
and tests for
JET-168 Improve the parser for function and tuple types as receiver types
2011-07-06 18:18:11 +04:00
Dmitry Jemerov 0c85c53c64 pattern matching for tuple and expression patterns 2011-07-06 15:24:34 +02:00
Dmitry Jemerov 89cafb3152 tuple literals 2011-07-06 13:01:14 +02:00
Dmitry Jemerov d71bcf5df4 [] for collections 2011-07-06 12:31:18 +02:00
Maxim Shafirov 6bbf1a61fe Failing tests 2011-07-04 13:27:24 +04:00
Dmitry Jemerov d4453c055e pass type arguments to generic functions 2011-06-30 18:57:30 +02:00
Dmitry Jemerov 1bd4eaf474 'is' works on class type parameters 2011-06-30 18:23:34 +02:00
Dmitry Jemerov e72aec943e use correct bytecode for calling methods on Java interfaces 2011-06-30 18:03:30 +02:00
Dmitry Jemerov cb1df5e2aa uncomment test which now passes 2011-06-30 17:59:24 +02:00
Dmitry Jemerov 68c8ae3a31 honor abstract modifier for classes 2011-06-30 17:54:14 +02:00
Dmitry Jemerov 840f9ffef1 store nullability information in TypeInfo 2011-06-30 17:46:52 +02:00
Dmitry Jemerov 01a08ecd04 use hard-coded TypeInfo instances for primitive types 2011-06-30 17:18:16 +02:00
Dmitry Jemerov 8a1b9933e4 assorted fixes to handle boxing correctly when calling generic methods/properties; rename getUnsubstitutedValueParameters/ReturnType to getValueParameters/ReturnType 2011-06-30 16:48:13 +02:00
Dmitry Jemerov f7a04097bb couple of fixes to allow generation of generic extension functions 2011-06-30 16:42:43 +02:00
Dmitry Jemerov b847fd1d09 failing test for generic extension function 2011-06-30 15:09:06 +02:00
Dmitry Jemerov 47bb3d6a2c initial basic implementation of object literals; move anonymous class name mapping to JetTypeMapper; cleanup many usages of JetTypeMapper 2011-06-29 17:38:39 +02:00