Commit Graph

3183 Commits

Author SHA1 Message Date
Dmitry Petrov 520a3133bc minor: allow specifying indentation unit in Printer 2016-10-18 09:06:53 +03:00
Dmitry Petrov 753a558bcb KT-14352 Record short reference to companion object via type alias,
so that it would be checked properly.
2016-10-17 10:11:58 +03:00
Valentin Kipyatkov 2b2042860d Fixed ParameterName annotation target 2016-10-14 12:24:43 +03:00
Dmitry Petrov e7ca00d91b Support @SinceKotlin annotation for type aliases. 2016-10-13 17:52:21 +03:00
Dmitry Petrov 8d634f6003 KT-14274: resolve type alias constructors calls in supertypes list as type alias constructors.
Support @Deprecated for type aliases, including type alias constructors.
2016-10-13 17:52:21 +03:00
Dmitry Petrov bee0e783f8 Minor cleanup. 2016-10-13 17:52:21 +03:00
Dmitry Petrov 3d0288ffed Annotations on type aliases: generate synthetic method for type alias annotations. 2016-10-13 17:52:21 +03:00
Dmitry Petrov d2d8f72ffc Annotations on type aliases: typealias is not a "default target".
Add diagnostic test for annotations on type aliases.
2016-10-13 17:52:21 +03:00
Dmitry Petrov 344bb03e8c Annotations on type aliases: add annotation target TYPEALIAS,
use it for @Deprecated and @Suppress.
2016-10-13 17:52:21 +03:00
Valentin Kipyatkov 7b12dd498f KT-13780 No completion and assertion error in log
#KT-13780 Fixed
2016-10-13 15:10:53 +03:00
Vsevolod bd6f83b9b7 KT-5044 intrinsify all contains calls for primitive ranges from stdlib 2016-10-13 10:11:32 +03:00
Ilya Gorbunov 2a7717214b Annotate new API with @SinceKotlin in kotlin-runtime except reflection and type aliases. 2016-10-13 08:37:31 +03:00
Alexander Udalov efc0763c2f Add module dependency script.runtime -> builtins
To prevent balloons that propose to configure Kotlin in the project
2016-10-12 18:54:50 +03:00
Alexander Udalov 383b7f89a6 Annotate ParameterName with SinceKotlin("1.1") 2016-10-12 17:07:10 +03:00
Alexander Udalov ed1490dbc4 Add SinceKotlin("1.1") annotation to new reflection API 2016-10-12 17:07:10 +03:00
Alexander Udalov 8828e671f5 Refactor class lookup in deserialized scopes
Move the logic to DeserializedMemberScope; drop NestedClassDescriptors
2016-10-12 17:07:10 +03:00
Alexander Udalov e1ce6f88d5 Remove extra cache of nested classes from DeserializedClassDescriptor
ClassDescriptor instances are already cached in ClassDeserializer
2016-10-12 17:07:09 +03:00
Alexander Udalov 2f616bdd33 Drop ModuleParameters, inline defaultImports everywhere 2016-10-12 17:07:09 +03:00
Ilya Chernikov 846797ff61 Switch to templates in the separate script runtime 2016-10-12 15:38:52 +02:00
Ilya Chernikov bdaaf4fb09 Add more basic script templates to runtime 2016-10-12 15:37:51 +02:00
Ilya Chernikov fe69185cd4 Refactor script definition and related parts:
- simplify script definition interface, convert it to class
 - create simple definitions right from base
 - refactor (rename and simplify) script definition with annotated template
 - simplify usages of script definition in many places
2016-10-12 15:37:50 +02:00
Alexander Udalov e37a20d6b3 Do not deserialize type aliases in compatibility mode
When "-language-version 1.0" is specified in command line arguments, the
compiler should not be able to see the declarations of type aliases in
libraries, because that corresponds to the behavior of the compiler of version
1.0. Note that type aliases are _completely invisible_ in this mode (i.e.
"unresolved reference" is reported) because they must not interfere with the
classifier resolution
2016-10-12 12:19:19 +03:00
Alexander Udalov d96f10c7bd Refactor deserialization of nested type aliases
Do it exactly in the same way as with properties/functions, in
DeserializedMemberScope and nowhere else
2016-10-12 12:19:18 +03:00
Alexander Udalov 88af36001c Introduce DeserializationConfiguration
Will be used soon to deliver the language/API-version-related behavior to the
deserialization
2016-10-12 12:19:17 +03:00
Valentin Kipyatkov 968a6cfd04 DescriptorRenderer to skip @ExtensionFunctionType and @ParameterName only when it's redundant 2016-10-11 23:38:54 +03:00
Valentin Kipyatkov ec51076355 DescriptorRenderer to render annotations for all types + separate option to render annotation arguments + use it in IdeDescriptorRenderers 2016-10-11 23:38:54 +03:00
Valentin Kipyatkov d4050ee074 More correct way of replacing parameter names to preserve overrides 2016-10-11 23:38:53 +03:00
Valentin Kipyatkov 4a8b41c72c Do not render @ParameterName annotations for types 2016-10-11 23:38:52 +03:00
Valentin Kipyatkov 1b7f7fb799 Minor changes on code review 2016-10-11 23:38:51 +03:00
Valentin Kipyatkov 59269ef1ae ParameterName annotation on type argument used to hold parameter name 2016-10-11 23:38:51 +03:00
Valentin Kipyatkov 3bd39df587 No parameter names in types for error messages 2016-10-11 23:38:50 +03:00
Valentin Kipyatkov 6527ada775 Changes on code review 2016-10-11 23:38:50 +03:00
Valentin Kipyatkov d8759fcbcc Optimizations 2016-10-11 23:38:50 +03:00
Valentin Kipyatkov 6b94e5fd34 Use parameter names from function type for invoke() function
#KT-435 Fixed
 #KT-9016 Fixed
2016-10-11 23:38:49 +03:00
Valentin Kipyatkov 41ee06ec96 Use parameter names in DescriptorRenderer 2016-10-11 23:38:49 +03:00
Valentin Kipyatkov 147d1da1ed Supported obtaining function type parameter names from KotlinType 2016-10-11 23:38:48 +03:00
Alexander Udalov 167ab1f860 Introduce "-api-version" CLI option
The `@SinceKotlin("X.Y.Z")` annotation now hides a particular declaration from
resolution when the API version specified by the `-api-version` option is
_less_ than X.Y.Z. The comparison is performed as for versions in Maven:
MavenComparableVersion is in fact a copy of
org.apache.maven.artifact.versioning.ComparableVersion.

Also support "!API_VERSION" directive in diagnostic tests

 #KT-14298 Fixed
2016-10-11 17:46:01 +03:00
Alexander Udalov e3df8ed2fe Introduce SinceKotlin annotation, check validity of its value
#KT-14297 Fixed
2016-10-11 17:45:51 +03:00
Ilya Gorbunov 4236a4dd07 Farewell, excluded imports from the platform. If anyone ever needs them again, they are buried in this commit. 2016-10-10 20:14:32 +03:00
Ilya Gorbunov f2c5fee1cf Consider only direct children of non-kotlin default imported packages when looking for aliased types. 2016-10-10 20:14:32 +03:00
Ilya Gorbunov 3baf2f8942 Use fully-qualified references to exceptions in kotlin-runtime 2016-10-10 20:14:32 +03:00
Ilya Gorbunov ff01b3d41b Search java.lang aliases also in kotlin.text package (for aliases to Appendable and StringBuilder) 2016-10-10 20:14:32 +03:00
Ilya Gorbunov 5042158df5 Determine automatically which types from java.lang is aliased in default imported kotlin packages and exclude them from imported java.lang.* scope. 2016-10-10 20:14:32 +03:00
Ilya Chernikov d05cb9f894 Fix idea module file 2016-10-10 15:28:20 +02:00
Ilya Chernikov 1e59f96f6b Add missing idea module file 2016-10-10 13:57:41 +02:00
Ilya Chernikov b7a52dc685 Add more standard templates 2016-10-10 11:24:54 +02:00
Ilya Chernikov 5e5ebaa68b Create a script runtime jar with a copy of standard script template (renamed) 2016-10-10 11:24:53 +02:00
Alexey Andreev c814a9d1d2 KT-2752: fix support of typealiases 2016-10-08 19:25:52 +03:00
Alexey Andreev 6f7e7d8504 KT-2752: fixes after code review 2016-10-08 19:25:49 +03:00
Alexey Andreev aa5d15cff7 KT-2752: minor fixes after code review 2016-10-08 19:25:43 +03:00