Commit Graph

5650 Commits

Author SHA1 Message Date
Ilya Ryzhenkov eb97005cb5 Avoid creating SimpleResolutionContext in ConstantExpressionEvaluator to updateNumberType 2015-07-20 20:58:20 +03:00
Ilya Ryzhenkov 84236992cb Replace Injected properties with constructor parameters when it doesn't cause cycles 2015-07-20 20:58:19 +03:00
Ilya Ryzhenkov 76b9ac0f63 FileScopeProviderImpl dependencies 2015-07-20 20:58:18 +03:00
Ilya Ryzhenkov 04e71234a1 LocalClassifierAnalyzer dependencies 2015-07-20 20:58:17 +03:00
Nikolay Krasko 9648338b19 Enum with interface keywords leads to fail in DeclarationChecker 2015-07-17 20:59:03 +03:00
Nikolay Krasko 71b406d792 Fix class kind detector: prioritize enum over annotations. Introduce new error about enum annotations classes. 2015-07-17 20:59:02 +03:00
Pavel V. Talanov b2b8f1aabb Minor: prettify converted code a little bit 2015-07-17 19:21:25 +03:00
Pavel V. Talanov aae8ccfd57 Refactor: AnnotationSerializer does not depend on bultins 2015-07-17 19:21:24 +03:00
Pavel V. Talanov 251ebc7ca8 Inject ConstantExpressionEvaluator to some points of usage 2015-07-17 19:21:24 +03:00
Pavel V. Talanov 92161370f1 Refactor: Make some of utils in ConstantExpressionEvaluator non static 2015-07-17 19:21:23 +03:00
Pavel V. Talanov 855bff39fe Refactor: move annotation arguments resolve related utils from AnnotationResolver to ConstantExpressionEvaluator 2015-07-17 19:21:23 +03:00
Pavel V. Talanov a84da2bb0c Minor: move utilities closer to their only usage 2015-07-17 19:21:22 +03:00
Pavel V. Talanov 5ba2cda95d Minor refactor: Extract visitor from ConstantExpressionEvaluator into a separate class 2015-07-17 19:21:21 +03:00
Mikhail Glukhikh af5e7f58da Implementation of Kotlin's 'target' annotation mapping to Java's 'Target' annotation + tests 2015-07-17 12:05:27 +03:00
Mikhail Glukhikh 2a1058ed63 Some usages of JetClassOrObject.isAnnotation() are removed. Related test fixed. 2015-07-17 12:05:19 +03:00
Ilya Gorbunov 35959c49b3 Cast Set to Collection to choose right overload of plus. 2015-07-17 10:53:50 +03:00
Pavel V. Talanov 2896ec67ba Support synthetic java properties in REPL
Use brand new iterable injection
2015-07-16 18:05:44 +03:00
Stanislav Erokhin d5f7fc52e0 Minor. Remove unnecessary trace parameter 2015-07-16 17:26:16 +03:00
Stanislav Erokhin 97d41be42e Support lazy perform for candidates 2015-07-16 17:26:16 +03:00
Stanislav Erokhin 7038b9d849 Add correct way for CallResolver to process CandidateResolveMode 2015-07-16 17:26:15 +03:00
Stanislav Erokhin b00dab0db5 Minor. Created CandidateResolveMode in CallCandidateResolutionContext. 2015-07-16 17:26:14 +03:00
Stanislav Erokhin 3c56787514 Minor. .java -> .kt 2015-07-16 17:26:14 +03:00
Stanislav Erokhin ce80773419 Minor. Convert CandidateResolver to kt 2015-07-16 17:26:14 +03:00
Stanislav Erokhin fdbd5efd1c Minor. remove static keywords 2015-07-16 17:26:13 +03:00
Valentin Kipyatkov 16d503aed0 Even faster completion of root packages 2015-07-16 15:04:01 +03:00
Valentin Kipyatkov 39e6237bb0 All JetReferenceExpression's should have a reference (see JetReferenceExpression.mainReference extension) - made JetPackageDirective not a JetReferenceExpression 2015-07-16 13:49:22 +03:00
Valentin Kipyatkov d743924be9 Changed signatures 2015-07-16 13:49:21 +03:00
Valentin Kipyatkov 283c8668f5 Don't use PsiElement.getReference() on JetElement 2015-07-16 13:49:17 +03:00
Valentin Kipyatkov f53a0b0536 Converted JetNameReferenceExpression to Kotlin 2015-07-16 13:49:17 +03:00
Valentin Kipyatkov 73dd4a214e Reference resolve from synthetic extension usages to get/set-methods 2015-07-16 13:49:15 +03:00
Valentin Kipyatkov 17442617bb Synthetic extensions suggested in completion 2015-07-16 13:49:13 +03:00
Valentin Kipyatkov 2e351f3e4d Initial implementation of synthetic extensions resolve 2015-07-16 13:49:13 +03:00
Valentin Kipyatkov c92b43c94b Added JetScope.getSyntheticExtensionProperties() 2015-07-16 13:49:13 +03:00
Pavel V. Talanov c313887641 Split CompileTimeConstant into two entities
1. ConstantValue
	* just holds some value and its type
	* implementations for concrete constants
2. CompileTimeConstant
	* is only produced by ConstantExpressionEvaluator
	* has additional flags (canBeUsedInAnnotation etc)
	* has two implementations TypedCompileTimeConstant containing a constant value
		and IntegerValueConstant which does not have exact type
	* can be converted to ConstantValue

Adjustt usages to use ConstantValue if flags are not needed
Add tests for some uncovered cases
2015-07-16 02:28:05 +03:00
Pavel V. Talanov 5dc5d77e60 Inject builtins in constants 2015-07-15 21:09:52 +03:00
Pavel V. Talanov ea1a85e78c Introduce CompileTimeConstantFactory 2015-07-15 21:09:40 +03:00
Pavel V. Talanov b0a4520710 Refactor compile constants to reduce boolean parameter hell 2015-07-15 20:57:02 +03:00
Pavel V. Talanov f97767e159 Drop ArrayValue redundant constructor parameter 2015-07-15 20:56:55 +03:00
Pavel V. Talanov ae88dd3f1f Convert compile constant classes to kotlin: prettify 2015-07-15 20:56:48 +03:00
Pavel V. Talanov 0369de86c7 Convert compile constant classes to kotlin: j2k 2015-07-15 20:56:41 +03:00
Pavel V. Talanov 7fef1c4613 Minor: inject builtIns to CallCompleter 2015-07-15 19:44:17 +03:00
Valentin Kipyatkov 5f8a652a38 KT-4592 Parameter info shows signatures of inaccessible methods
#KT-4592 Fixed
2015-07-15 16:32:20 +03:00
Denis Zharkov e82adc9d90 Drop unused Approximation type capabilities 2015-07-15 10:01:15 +03:00
Dmitry Jemerov 0295b13cc7 couple more tuple leftovers 2015-07-14 17:14:33 +02:00
Dmitry Jemerov 64860345e3 drop tuple type support from parser 2015-07-14 17:09:09 +02:00
Dmitry Jemerov 55c11539f8 drop tuples support from parser 2015-07-14 17:06:17 +02:00
Mikhail Glukhikh 0d2a81f098 Annotation target checking in front-end, a set of tests for different annotation targets, existing test fixes
No checks for erroneous annotations. Additional checks for identifiers.
2015-07-14 16:25:04 +03:00
Mikhail Glukhikh 4a27b4d614 JetClassOrObject.isAnnotation() is deprecated 2015-07-14 16:24:59 +03:00
Mikhail Glukhikh 1eac4d67de "annotation" is now parsed as an identifier. It is no longer a soft keyword.
Sometimes it's allowed to parse "annotation" unescaped even if other annotations must be escaped.
A set of annotations and their options tests.
A swarm of existing tests fixed (mostly kotlin.annotation.annotation() added to txt-files).
STUB_VERSION increased. Some quick fixes slightly changed.
2015-07-14 16:24:55 +03:00
Valentin Kipyatkov d32ba08cb7 KT-8394 ReplaceWith for Delegates.lazy fails outside of stdlib
#KT-8394 Fixed
2015-07-13 19:41:42 +03:00