Yan Zhulanow
d56a3f97c6
Render annotations with use-site target
2015-08-31 15:05:03 +03:00
Alexander Udalov
a1097f7081
Add val KClass.staticProperties: Collection<KProperty0<*>>
...
To get static fields from Java classes
2015-08-29 18:37:41 +03:00
Alexander Udalov
593937d302
Support KCallable.callBy with map of parameters to arguments
...
callBy is able to handle optional parameters.
#KT-8827 Fixed
2015-08-29 18:37:40 +03:00
Alexander Udalov
0d62680f63
Support KParameter.isOptional
...
#KT-8825 Fixed
2015-08-29 18:37:39 +03:00
Alexander Udalov
fd97383f8a
Fix mapping of jvmStatic functions
...
#KT-8800 Fixed
2015-08-29 18:37:38 +03:00
Alexander Udalov
9a8cf23ed4
Support KClass.companionObject and companionObjectInstance
...
#KT-7636 Fixed
2015-08-29 18:37:32 +03:00
Alexander Udalov
94d45f35d4
Support KClass.nestedClasses
2015-08-29 17:59:45 +03:00
Valentin Kipyatkov
e8dc9ede31
Implemented HiddenDeclaration annotation (doc-comment to be added!)
2015-08-29 10:54:59 +03:00
Stanislav Erokhin
4c7bafce45
Global replace JetScope to LexicalScope
2015-08-29 01:45:56 +03:00
Alexander Udalov
7c28a2e732
Support KClass.defaultType
2015-08-28 21:22:11 +03:00
Alexander Udalov
d36ef90dd6
Provide equals/hashCode/toString for KParameter implementation
...
Two KParameter instances are equal iff their backing descriptors are equal and
their callables are equal
2015-08-28 21:11:30 +03:00
Alexander Udalov
d4825cf4f0
Support KParameter.kind: instance, extension receiver, or value
2015-08-28 21:11:22 +03:00
Alexander Udalov
a73d02418d
Introduce additional API for introspecting functions
...
memberFunctions, declaredMemberFunctions, staticFunctions, etc.
#KT-8797 Fixed
2015-08-28 21:11:21 +03:00
Alexander Udalov
ebe4a8ec89
Provide equals/hashCode/toString for KType implementation
2015-08-28 21:11:20 +03:00
Alexander Udalov
9882e86ecb
Don't render contents of enum entry classes in .txt tests, regenerate tests
...
They are irrelevant because cannot be accessed from the outside anyway
2015-08-28 21:11:06 +03:00
Alexander Udalov
29abf94327
Prohibit clone() for enum classes
...
#KT-8972 Fixed
2015-08-28 21:11:02 +03:00
Alexander Udalov
89f3cfc704
Support parameter names for Java 8 classes in reflection
...
Also support specifying additional options to javac in codegen tests, which was
needed to compile Java sources with the "-parameters" option
2015-08-28 21:11:01 +03:00
Denis Zharkov
5e09a0c2c9
Add some test cases after review
2015-08-28 18:50:25 +03:00
Denis Zharkov
b471767e03
Refine smart cast check for type parameters
2015-08-28 18:50:25 +03:00
Denis Zharkov
aad977d204
Properly check whether nullability of receiver argument fits to parameter's nullability
...
It's should behave like we check isSubtype(receiverType, parameterType) + use nullability info from smart cast
#KT-1090 Fixed
2015-08-28 18:50:25 +03:00
Denis Zharkov
6ecfa6e985
Refine subtyping check: pay attention to corresponding supertype nullability
...
F: Any, T : F? => !isSubtype(T, Any)
It helps to identify upper bounds violation like in KT-7455
#KT-7455 Fixed
#KT-2924 Fixed
#KT-3015 Fixed
2015-08-28 18:50:25 +03:00
Denis Zharkov
a906be6dd7
Prohibit using null as a value of generic type
...
#KT-7350 Fixed
#KT-7736 Fixed
#KT-7485 Fixed
2015-08-28 18:50:25 +03:00
Stanislav Erokhin
2a0159f23b
Created JetScope.memberScopeAsFileScope()
2015-08-27 12:01:11 +03:00
Stanislav Erokhin
9a435e332f
Fix InnerClassesScopeWrapper - remove properties and functions from this scope.
2015-08-27 12:01:07 +03:00
Alexander Udalov
56e12787a8
Fix exception on overridding var-property with a val constructor parameter
...
#KT-3810 Fixed
2015-08-27 10:23:49 +03:00
Alexander Udalov
8d9618348d
Move .java and .kotlin extension properties to kotlin.jvm
...
Delete the old ones in package kotlin.reflect.jvm because otherwise the code
using those functions will become red in a lot less meaningful way (overload
resolution ambiguity) than if they're deleted (unresolved import)
Based on the work originally done by @dnpetrov
#KT-8380 Fixed
2015-08-27 08:19:50 +03:00
Stanislav Erokhin
abb18b7bb9
KT-8861 Package name vs property with wrong receiver
...
#KT-8861 Fixed
2015-08-25 20:43:52 +03:00
Dmitry Jemerov
4743a69d76
rename platformName annotation to jvmName
2015-08-25 15:40:46 +02:00
Zalim Bashorov
bdd834604a
Add lacation parameter to ModuleDescriptor.resolveTopLevelClass (in DescriptorUtils.kt)
2015-08-24 19:50:09 +03:00
Zalim Bashorov
0ba18ca8cd
Track the top level declarations, note not usages
...
It'll be useful for more accurate tracking dependencies inside package.
2015-08-24 19:50:03 +03:00
Alexander Udalov
aba6ab1299
Refactor command-line interface to kotlin-preloader.jar
...
Use reasonable defaults for the options: no time profiling, no instrumenters,
empty classpath, 4096 as the class number estimate. Replace 4096 in the
codebase with the constant field.
Keep the old interface intact until the build is bootstrapped and the new one
can be used in all compilation steps
2015-08-24 01:29:58 +03:00
Alexander Udalov
7dcb690254
Additional tests on reflection calls
2015-08-24 01:29:58 +03:00
Alexander Udalov
ccb58d8601
Minor, add some tests on get/set/name/instanceof for properties w/o reflection
2015-08-24 01:29:58 +03:00
Alexander Udalov
9095fa2844
Make PropertyMetadataImpl a data class
...
To allow property delegates to use property metadata as a key in the hash map,
and to improve debugging experience
2015-08-24 01:29:57 +03:00
Pavel V. Talanov
f38abd5258
Refactor Descriptor renderer test to avoid creating ResolveElementCache explicitly
2015-08-19 21:18:34 +03:00
Pavel V. Talanov
0c2650c86c
Provide API to get frontend services from plugin code via resoltion facade
...
API to create ide-side services using frontend services (for now "ide services" cannot be injected into other ide services)
2015-08-19 21:18:31 +03:00
Pavel V. Talanov
da025475a8
Make TypeIntersector a component and inject it into some points of usage
2015-08-19 21:18:29 +03:00
Pavel V. Talanov
f393ce598d
Extract TypeIntersector from TypeUtils
2015-08-19 21:18:29 +03:00
Stanislav Erokhin
2ee8f1c454
Change outer scope for nested class and object -- removed implicit outer class receiver.
...
#KT-5362 Fixed
#KT-8814 Fixed
2015-08-18 21:26:42 +03:00
Zalim Bashorov
8e7786817d
LookupLocation.NO_LOCATION_FROM_TEST -> NoLookupLocation.FROM_TEST
2015-08-18 12:34:19 +03:00
Zalim Bashorov
69e0f23db9
Classify Location.NO_LOCATION usages
2015-08-18 12:21:31 +03:00
Evgeny Gerashchenko
50dbf080f7
Test for KT-2082 Missing 'Unused expression' warning
...
#KT-2082 obsolete
2015-08-15 12:29:41 +02:00
Sergey Mashkov
c0078a53e6
Temporary move trimIndent implementations to tests as private members to avoid resolution ambiguity
2015-08-12 18:45:10 +03:00
Valentin Kipyatkov
468919f5d9
Fixed codegen crash on use of protected synthetic extension property
2015-08-12 18:17:09 +03:00
Dmitry Petrov
b59bf6227f
unqualified super: should be able to invoke methods of Any without extra hassle
...
when Any is an implicit immediate superclass
2015-08-12 12:14:14 +03:00
Valentin Kipyatkov
e3bca3010c
Fixed infinite recursion
2015-08-11 13:21:57 +03:00
Mikhail Glukhikh
3f14e74b08
Drop old enum syntax. Comma / semicolon are now a syntactic part of enum entry.
...
Comma must present now between enum entries, semicolon between last entry & first member, constructor calls must be without colons / specifiers.
A swarm of tests fixed accordingly.
2015-08-11 10:38:10 +03:00
Zalim Bashorov
0978e9f169
Minor: move LookupLocation to org.jetbrains.kotlin.incremental.components
2015-08-08 02:08:16 +03:00
Zalim Bashorov
2aa4c383cd
UsageLocation -> LookupLocation
2015-08-08 02:08:15 +03:00
Zalim Bashorov
96696c6846
UsageCollector -> LookupTracker
2015-08-08 02:08:14 +03:00