Commit Graph

50 Commits

Author SHA1 Message Date
Alexander Udalov f7b6457139 Replace "jet" package name with "kotlin" in testData 2014-03-02 19:55:26 +04:00
Evgeny Gerashchenko e175ebf60a Rendering package FQ names instead of short names. 2013-12-17 20:28:56 +04:00
Alexander Udalov f0e230cf23 Fix test data of recursive processor and renderer
After object refactoring
2013-12-02 19:56:09 +04:00
Andrey Breslav bfbb200ba8 Only render exact function types in special syntax 2013-11-21 13:05:39 +04:00
Alexander Udalov c029cbdf62 Do not escape AS_SAFE,NOT_IN,NOT_IS in DescriptorRenderer 2013-09-18 17:20:45 +04:00
Michał Sapalski 7deec28b9c Adjusted tests to the new DescriptorRenderer behaviour 2013-04-29 15:44:07 +04:00
Evgeny Gerashchenko d194d4d877 Updated test data. Unit -> jet.Unit. 2013-03-22 16:38:26 +04:00
Evgeny Gerashchenko 5ccbce6de6 Got rid of "tuple" word all over the code. 2013-03-22 16:38:25 +04:00
Evgeny Gerashchenko 66e7a0110c Updated test data and stdlib code which dependent on Tuple0/Unit
aliasing.
2013-03-22 16:38:24 +04:00
Alexander Udalov 192a81591b Resolve qualified nested class expressions
lookupNamespaceType now returns NamespaceType of a scope not only of the
namespace found by name, but also of the classifier static classes scope found
by the same name. This allows correct resolution of expressions
"Class.Nested.member()", where Class comes from Java (previously it was
resolved into a NamespaceDescriptor with a NamespaceType).

NamespaceDescriptor.getNamespaceType() is deleted since there are no sense in
namespace's NamespaceType alone anymore.

Also some minor refactoring (referencedName param is useless)

 #KT-1174 In Progress
2013-01-16 23:11:50 +04:00
Evgeny Gerashchenko dda15f7505 Excluded class object names from FQ name and qualified name. 2012-12-28 14:25:34 +04:00
Evgeny Gerashchenko c041fc8fea Removed sorting of upper bounds in renderer.
Removed corresponding test.
2012-12-28 14:25:18 +04:00
Evgeny Gerashchenko 28c93f2912 Not rendering "final" for top-level functions and properties. 2012-12-28 14:25:18 +04:00
Evgeny Gerashchenko da7f4f3421 Escaping parameter names in "where". 2012-12-27 20:46:59 +04:00
Evgeny Gerashchenko ef1ffa4bf7 Sorting upper bounds when rendering "where" to workaround failing test. 2012-12-27 20:46:56 +04:00
Evgeny Gerashchenko 778df8b1fd Rendering annotations and visibility for class object.
Don't render modality for any object kind.
2012-12-27 20:46:55 +04:00
Evgeny Gerashchenko bf42e3c093 Rendering "constructor" instead of "ctor". 2012-12-27 20:46:54 +04:00
Evgeny Gerashchenko 08d2002277 Rendering 'where' for properties. 2012-12-27 20:46:53 +04:00
Evgeny Gerashchenko b7e4907f74 Rendering where suffix for classes. 2012-12-27 20:46:52 +04:00
Evgeny Gerashchenko b300329e21 Rendering variance when type parameter is reified. 2012-12-27 20:46:52 +04:00
Evgeny Gerashchenko 7beb4fe10e Rendering constructors in DescriptorRendererTest. 2012-12-27 20:46:52 +04:00
Evgeny Gerashchenko 2b83b970ed Rendering annotations in descriptor renderer. 2012-12-27 20:46:52 +04:00
Evgeny Gerashchenko ad5a869a0a Rendering all class kinds in DescriptorRenderer. 2012-12-27 20:46:51 +04:00
Evgeny Gerashchenko 85b50aefda Simplified code in DescriptorRendererImpl. 2012-12-17 16:36:01 +04:00
Evgeny Gerashchenko fc14d98869 Removed code for rendering tuple types. 2012-12-17 16:35:56 +04:00
Evgeny Gerashchenko b07d6d56a0 Escaping keywords used as identifiers in DescriptorRenderer.
#KT-2810 fixed
2012-12-17 16:35:55 +04:00
Pavel V. Talanov c39a4dc57a Change type of enum entry property
Now such properties have types corresponding to enum class not it's own enum entry classes
2012-11-21 19:49:49 +04:00
Pavel V. Talanov c42380dc0b Make enum entry classes have private visibility and properties have public vibility
Tests for backend are broken
2012-11-21 19:49:48 +04:00
Andrey Breslav 5eaa5b396b Removing usages of tuples from test data
(KT-2358 Drop tuples)
 #KT-2358 In progress
2012-09-18 20:27:09 +04:00
Natalia.Ukhorskaya 60bdae9d75 Prohibit body for annotation class
#KT-1886 Fixed
2012-09-13 16:27:48 +04:00
Alexander Udalov d99ffbd120 jet.Annotation
Create a supertype for all Kotlin annotations, jet.Annotation.
Map java.lang.annotation.Annotation to jet.Annotation and vice versa.
Add extension function "annotationType()" to every annotation, similar to java.lang.annotation.Annotation.annotationType()
 #KT-1620 Fixed
2012-08-27 20:44:43 +04:00
Pavel V. Talanov 6132946ced Introduce ClassKind#CLASS_OBJECT and ClassKind#isObject and usages.
Rename LazyClassDescriptor#onlyEnumEntries -> enumClassObjectInfo.
Determine ClassKind in JetClassInfo and JetObjectInfo constructor.
Remove complex constructor for enum entry in enum test.
Logic simplified in LazyClassMemberScope.
Minor refactorings.
2012-08-27 15:52:36 +04:00
Pavel V. Talanov b36873bf6d Class object always have name of the form <class-object-for-ClassName>. 2012-08-21 15:32:44 +04:00
Alex Tkachman 5947759684 proper compilation of enums 2012-08-13 22:37:27 +03:00
Evgeny Gerashchenko 221e412ba7 Visibilities of property accessors were not resolved for properties overriding others. They had "internal" visibility after analysis passed. 2012-06-16 14:36:05 +04:00
Andrey Breslav bdae2021b5 Enum test case extracted 2012-06-14 12:36:12 +04:00
Andrey Breslav b5f5ba7e32 KT-2184 Fix rendering of error types
#KT-2184 Fixed
2012-06-07 15:52:39 +04:00
Stepan Koltsov 33a59ff5fe Name class
In the most places in frontend identifier is stored in Name class, was in String.
Name has two advantages over String:
* validation: you cannot accidentally create identifier with dot, for example
* readability: if you see String, you don't now whether it is
  identifier, fq name, jvm class name or something else

Name's disadvantage is (small) performance overhead. We have no value types in JVM.
2012-05-23 02:52:32 +04:00
Stepan Koltsov 3af2b1b80a improve rendering of upper bounds 2012-05-11 18:24:58 +04:00
Evgeny Gerashchenko 0f0330a4b4 Added rendering vararg keywords and valid parameter type in this case.
#KT-1840 fixed
2012-04-20 20:44:09 +04:00
Evgeny Gerashchenko 90ac45f3f9 Added extra space after function type arguments list in DescriptorRenderer. Added test. 2012-04-20 20:44:08 +04:00
Evgeny Gerashchenko 1f7c435a24 Removed val/var soft keywords in renderer for functions 2012-04-20 20:44:08 +04:00
Evgeny Gerashchenko 85ce85383b Added rendering variance for type parameters in DescriptorRenderer. 2012-04-19 18:46:45 +04:00
Evgeny Gerashchenko 99acd9cdf0 Fixed rendering "defined in ..." DescriptorRenderer, now it doesn't render "<module>.<root>" 2012-04-19 15:22:01 +04:00
Stepan Koltsov abfd03cae3 descriptor name cannot be empty string
* add assertion
* fix tests
* #KT-1748 Fixed
2012-04-09 22:31:56 +04:00
Evgeny Gerashchenko aec021e668 Implemented better rendering for parameters with default values in decompiler and descriptor renderer.
#KT-1582 fixed
2012-04-08 19:59:53 +04:00
Evgeny Gerashchenko f6d8771f79 Added vararg parameter and parameter with default value to DescriptorRendererTest. 2012-04-06 20:04:57 +04:00
Evgeny Gerashchenko 83bd57184d Added test cases for classes, its members, function and tuple types to DescriptorRendererTest. 2012-04-06 20:04:57 +04:00
Evgeny Gerashchenko da9973a822 Added rendering visibility in DescriptorRenderer. 2012-04-06 20:04:57 +04:00
Evgeny Gerashchenko 2c3ff4357e Added simple DescriptorRendererTest checking for global functions and properties. 2012-04-06 17:24:30 +04:00