Pavel V. Talanov
76029ee9b2
Introduce JvmBuiltIns and DefaultBuiltIns, different instances of KotlinBuiltIns
...
Make KotlinBuiltIns an abstract class
JsPlatform has DefaultBuiltIns
2015-10-01 17:53:14 +03:00
Pavel V. Talanov
22e3e192ee
ModuleDescriptorImpl: remove KBI as default parameter
2015-10-01 17:53:12 +03:00
Pavel V. Talanov
643cb0a5d4
js.frontend: Drop usages of KotlinBuiltIns.getInstance()
2015-10-01 17:53:08 +03:00
Alexander Udalov
34d14939f9
Fix build after change in property accessor names
2015-10-01 02:14:25 +03:00
Valentin Kipyatkov
5afa91d4ec
Restored back temporarily renamed properties
2015-09-30 22:50:27 +03:00
Valentin Kipyatkov
98da621ab3
Temporary rename of properties starting with "is" and used from java code (will revert back after changing accessor naming policy)
2015-09-29 18:32:23 +03:00
Denis Zharkov
9c4564a5a6
Get rid of deprecated annotations and modifiers in project code
2015-09-18 09:34:27 +03:00
Pavel V. Talanov
2ef5e03f27
Introduce TargetEnvironment and CompilerEnvironment
2015-08-19 21:18:27 +03:00
Zalim Bashorov
96696c6846
UsageCollector -> LookupTracker
2015-08-08 02:08:14 +03:00
Mikhail Glukhikh
61fbe0d1e8
Refactoring of repeatable on retention SOURCE check (correct additional checker usage)
2015-08-03 19:43:24 +03:00
Mikhail Glukhikh
219ffa4fb3
Dead code removed
2015-07-28 17:13:34 +03:00
Pavel V. Talanov
2b9fc5268e
Inject ConstantExpressionEvaluator into JsCallChecker
...
Do not pass expected type into evaluateExpression
2015-07-24 13:47:51 +03:00
Pavel V. Talanov
8cc9739f72
Refactor: Pass TargetPlatform instead of configurator, hide DynamicTypesSettings inside configurator
2015-07-23 16:15:38 +03:00
Pavel V. Talanov
84b8ed00c5
Refactor: Move TargetPlatform to frontend, make it expose platform dependant resolve services
...
AdditionalCheckerProvider -> PlatformConfigurator which operates directly on container
2015-07-23 16:15:35 +03:00
Pavel V. Talanov
3227ae5577
Inject non-context dependent CallCheckers instead of getting them from context
2015-07-23 16:15:28 +03:00
Zalim Bashorov
679d5fe496
Introduce UsageCollector
2015-07-21 22:27:27 +03:00
Pavel V. Talanov
add8387141
Fix some problems with jsCode function
...
1. Fix a bug in frontend when passing non-String constant led to exception
2. Fix a bug in backend when passing non-JetStringTeplate string constant led to exception
3. Avoid recomputing constant argument in backend
2015-07-21 20:52:42 +03:00
Mikhail Glukhikh
94a00540be
Targeting / retention for a set of standard annotations, some inapplicable annotation checks replaced with target check, some fixed tests
2015-07-21 15:36:53 +03:00
Alexander Udalov
b5763e311f
Minor, unworkaround the fixed issue
2015-07-21 13:32:26 +03:00
Dmitry Jemerov
708513ce4c
optimize imports
2015-07-20 18:32:13 +02:00
Dmitry Jemerov
3718a7dd44
code cleanup for JS modules
2015-07-20 18:32:05 +02: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
0369de86c7
Convert compile constant classes to kotlin: j2k
2015-07-15 20:56:41 +03:00
Mikhail Glukhikh
5126f01452
kotlin.annotation package with annotations "target" and "annotation" and enums AnnotationTarget and AnnotationRetention introduced.
...
Targets for existing built-in annotations.
Access to annotation package from packageFragmentProvider.
Documentation for all classes in the package.
2015-07-14 16:24:45 +03:00
Denis Zharkov
0a19fb7df2
Make project compilable after types enhancement
2015-07-09 16:36:46 +03:00
Yan Zhulanow
9c8ea54946
Use KotlinJvmCheckerProvider to check @publicField
2015-07-07 16:35:24 +03:00
Pavel V. Talanov
b173f96505
Refactor: Remove ScopeProvider, introduce FileScopeProviderImpl
...
Rename NoFileScopeProvider -> FileScopeProvider.ThrowException, ScopeProvider.AdditionalScopeProvider -> FileScopeProvider.AdditionalScopes
2015-06-30 16:12:23 +03:00
Nikolay Krasko
8bea21a847
Introduce BodyResolveCache for storing resolve function body task in IDE
2015-06-30 13:54:42 +03:00
Ilya Gorbunov
6d4e48ab9a
Compiler&plugin deprecations cleanup: string operations.
2015-06-29 17:06:43 +03:00
Ilya Gorbunov
2c31a1a345
Compiler&plugin deprecations cleanup: *array -> *arrayOf, copyToArray -> toTypedArray.
2015-06-29 17:06:12 +03:00
Pavel V. Talanov
65c6adfaa4
Drop "injector-generator" module, tests and existing generated injectors
...
Move GeneratorsFileUtil to "generators" module
Drop "Generate Injectors" run configuration
2015-06-26 15:21:43 +03:00
Pavel V. Talanov
df529f1a4b
Convert usages of existing generated injectors to dynamic injectors
...
Rewrite RuntimeModuleData to use hand-written code as we do not pack container module into runtime
This change introduces some overhead (up to 10% for the tests I ran) in some scenarios in IDE, that should be addressed later
2015-06-26 15:21:41 +03:00
Pavel V. Talanov
705f35450f
Refactor setting dependencies for ModuleDescriptors
2015-06-13 20:36:47 +03:00
Denis Zharkov
200dee2761
Replace deprecated annotations in whole project
2015-06-12 09:23:32 +03:00
Michael Nedzelsky
999c83240c
JS: error message (not exception) for incompatible abi version during compilation
2015-06-10 05:37:57 +03:00
Zalim Bashorov
68eca8bc00
JS backend: add the support secondary constructors
2015-05-28 11:06:06 +03:00
Zalim Bashorov
72c2648fc8
JS frontend: remove diagnostics about the secondary constructors are not supported
2015-05-28 10:24:47 +03:00
Alexander Udalov
48b18f18d3
Restore explicit imports of Kotlin function types in Java
...
This is a follow-up to 738a84e259 and
d4965a4f3e . Optimize imports in all files
affected in those commits, drop temporary _.kt
2015-05-26 18:46:27 +03:00
Alexander Udalov
738a84e259
Temporary hack to migrate functions to package kotlin.jvm.functions
...
Add a file in package 'kotlin.jvm.functions' to the project and replace
explicit imports of functions 'kotlin.Function{n}' to two imports 'kotlin.*'
and 'kotlin.jvm.functions.*', so that the codebase can be compiled both by the
old and by the new compiler
2015-05-26 15:04:34 +03:00
Michael Bogdanov
ef4981b0ef
Report error on indirect inline cycles
2015-05-21 10:06:02 +03:00
Michael Nedzelsky
d629271510
JS: make -meta-info cli option boolean
2015-05-21 02:30:54 +03:00
Pavel V. Talanov
cfdb1f4ec3
Refactor creation of ModuleDescriptor
...
Add storageManager to ModuleDescriptorImpl (to be used later)
Extract ModuleParameters to hold default imports and platform class map
Introduce MutableModuleContext to simplify module creation code
2015-05-20 19:45:50 +03:00
Mikhail Glukhikh
fdf0ea5546
Enum warnings fixed: deprecated delimiters, short super constructors, both in project and in libraries
2015-05-18 16:08:16 +03:00
Pavel V. Talanov
268d43d14a
Change ModuleContext#module type to ModuleDescriptor instead of ModuleDescriptorImpl
2015-05-17 18:24:50 +03:00
Pavel V. Talanov
01efbb1502
Introduce ModuleContext, ProjectContext and use it some of the APIs
2015-05-17 18:24:49 +03:00
Pavel V. Talanov
9d22a39924
Refactor: TopDownAnalysisParameters -> TopDownAnalysisMode
...
No longer implements TypeLazinessToken (was unused)
2015-05-17 18:24:49 +03:00
Pavel V. Talanov
d9c70b5927
Drop TopDownAnalysisParameters#isAnalyzingBootstrapLibrary()
2015-05-17 18:24:48 +03:00
Pavel V. Talanov
f9b6c25498
Refactor: TopDownAnalysisParameters doesn't implement GlobalContext
2015-05-17 18:24:47 +03:00
Pavel V. Talanov
ac2cb9af74
Remove some usages of KotlinBuiltIns.getInstance()
...
Introduce DeclarationDescriptor.builtIns extension to get builtins where descriptors are available
Introduce various utilities in KotlinBuiltIns to check for primitive types and get fq names of builtins
2015-04-28 12:49:34 +03:00
Pavel V. Talanov
1a5efacbf3
Refactor frontend components
...
Make dependencies more explicit
Move components out of ExpressionTypingServices
Make ExpressionTypingUtils a true utility class, refactor stuff out
Extract new components: FakeCallResolver, MultiDeclarationResolver, ValueParameterResolver
2015-04-27 15:56:59 +03:00