Commit Graph

745 Commits

Author SHA1 Message Date
Andrey Breslav
bbb59773aa filesToAnalyzeCompletely removed 2015-03-06 21:59:05 +03:00
Andrey Breslav
32a3b58f14 ScriptDescriptorImpl and related non-lazy code removed 2015-03-06 21:59:04 +03:00
Andrey Breslav
d310b0c99d Got rid of the LAZY flag 2015-03-06 21:59:03 +03:00
Evgeny Gerashchenko
8ab94a18ae Inlined trivial method classDescriptorToDeclaration 2015-03-05 15:19:30 +03:00
Yan Zhulanow
7bc81f68b4 Fix a bug in PluginURLClassLoader 2015-02-26 16:07:45 +03:00
Yan Zhulanow
2d6186b155 Report compiler exception on plugin load fail 2015-02-26 16:07:45 +03:00
Yan Zhulanow
0ecd1c04b0 Update copyright 2015-02-26 15:26:02 +03:00
Yan Zhulanow
f033604c7a Rename jet to kotlin in compiler api 2015-02-26 15:25:59 +03:00
Yan Zhulanow
9aef9b2643 Rename jet to kotlin in plugin-api 2015-02-26 15:25:58 +03:00
Yan Zhulanow
c756cfef86 Codebase update 2015-02-26 15:25:57 +03:00
Yan Zhulanow
4b18507bf5 CliOptions moved to the separate file 2015-02-26 15:25:54 +03:00
Yan Zhulanow
e891d48a7a Localize plugin string format usages 2015-02-26 15:25:54 +03:00
Yan Zhulanow
7fc5114ffc Load compiler plugins via the custom ClassLoader 2015-02-26 15:25:50 +03:00
Yan Zhulanow
e0f1a56b28 Load compiler plugins via ServiceLoader 2015-02-26 15:25:44 +03:00
Yan Zhulanow
660997e1b9 Loading compiler plugins implemented 2015-02-26 15:25:43 +03:00
Yan Zhulanow
72c611df22 Extensions registered before usage 2015-02-26 15:25:43 +03:00
Yan Zhulanow
a08411f925 Process normally when no plugins were found 2015-02-26 15:25:43 +03:00
Andrey Breslav
5811b13ce7 ExpressionCodegenExtension extracted 2015-02-26 15:25:40 +03:00
Andrey Breslav
e10d8a6fe0 ExternalDeclarationsProvider introduced 2015-02-26 15:25:40 +03:00
Andrey Breslav
1e70369cf8 Logic related to command-line options moved to android-compiler-plugin 2015-02-26 15:25:40 +03:00
Andrey Breslav
d961e2f5b4 CommandLineProcessor infrastructure added 2015-02-26 15:25:39 +03:00
Andrey Breslav
35028227a0 Plugin component registrar introduced
CompilerConfiguration moved to plugin-api
2015-02-26 15:25:38 +03:00
Mikhail Mutcianko
376886a9c3 add configuration key to pass android manifest file 2015-02-26 15:25:28 +03:00
Mikhail Mutcianko
1b50b226ae move android rename handler out of kotlin property renamer, extract resource manager class 2015-02-26 15:25:25 +03:00
Mikhail Mutcianko
d107ad92a0 refactor converter initialization
- push lazyInit() down to IDE and Cli implementations
- no file listeners created in cli implementation anymore
- fix tests
2015-02-26 15:25:20 +03:00
Mikhail Mutcianko
eb7534f369 add converter output caching
- add two level caching: per xml conversion result and complete resulting JetFile,
  so that only modified xmls are actually converted, and if no change has been
  made to any of those, last successfully built psi file is returned
- merge AndroidUIXmlPathProvider and AndroidUIXmlParser
- update tests
2015-02-26 15:25:19 +03:00
Mikhail Mutcianko
ec6f9c9fc5 add compiler key for providing android resources path 2015-02-26 15:25:18 +03:00
Alexander Udalov
768a67d1f1 Output version upon REPL start 2015-02-24 11:10:26 +03:00
Alexey Tsvetkov
f5eb39e1f1 JS: added TranslationResult 2015-02-20 16:01:26 +03:00
Pavel V. Talanov
d6a942a574 Remove all deprecated OBJECT$ usages from project code 2015-02-18 19:33:56 +03:00
Evgeny Gerashchenko
48a6fb37f9 Worked around private method. There should be API available, anyway. 2015-02-18 18:53:37 +03:00
Nikolay Krasko
5d3d446ea4 Now PsiElementFinderImpl is registered via extension but it hadn't been added to JavaCoreProjectEnvironment 2015-02-18 18:51:53 +03:00
Alexey Kudravtsev
28b7d71ab7 Registering extension points manually in JetCoreEnvironment. They are not registered by IDEA's core environment code anymore. 2015-02-18 18:51:52 +03:00
Pavel V. Talanov
0343fd8fc7 Rework class objects
Class objects have name "Default" by default
Do not produce synthetic class objects
Class objects have new semantics:
    class "A" has class object "B" if literal "A" can be used as a value of type "B"
Class objects act like ordinary nested objects
    i.e. are accessible from class scope via getClassifier()
Jvm backend: class object fields and class have the name of class object ("Default")
	as opposed to special "OBJECT$" and "object"
Serialization: only the name of class object is needed to serialize data
2015-02-16 15:38:27 +03:00
Alexander Udalov
a6ac56ae5a Sort source files in JetCoreEnvironment
Is supposed to help make error situations more deterministic
2015-02-09 21:14:03 +03:00
Alexander Udalov
339a38b69b Minor, use module.resolveTopLevelClass() utility 2015-02-09 21:14:03 +03:00
Alexander Udalov
4128655893 Report incomplete hierarchy error
This is the case when you reference a Java class in Kotlin whose superclass is
not resolved. Previously this fact was swallowed by LazyJavaClassDescriptor
leading to mysterious compilation errors

 #KT-5129 Fixed
2015-02-09 21:14:02 +03:00
Alexander Udalov
28d8c8906a Use module instead of trace in light class search
Fixes weird and infrequent compilation errors in KotlinLightClassForPackage.kt
2015-02-09 21:14:02 +03:00
Nikolay Krasko
8dd910bd36 Convert to Kotlin KotlinLightClassForPackage: fixes for j2k converter 2015-02-06 23:53:15 +03:00
Evgeny Gerashchenko
e5fd6bc067 Minor. Inlined trivial functions. 2015-02-06 17:44:42 +03:00
Evgeny Gerashchenko
5b89f88447 Minor. Simplified getObsoletePackageParts() and similar functions. 2015-02-06 17:44:40 +03:00
Evgeny Gerashchenko
f071802e19 Simplified process of filtering out obsolete package parts and loading descriptors from incremental caches.
Now when file is deleted or dirty (compiled right now), its old package part is used. Current package of file doesn't matter.
2015-02-06 17:44:39 +03:00
Nikolay Krasko
a8557180f1 Register KotlinJavaPsiFacade as component 2015-02-02 14:15:01 +03:00
Andrey Breslav
4d66551067 Call analyzeDeclarations() that includes files where it was called before refactoring 2015-01-29 16:07:29 +03:00
Andrey Breslav
ed4da90dcd Outer DataFlowInfo delivered to local class members 2015-01-29 16:07:26 +03:00
Andrey Breslav
5b4682dd0e LazyTopDownAnalyzer does not depend on ResolveSession or ScopeProvider any more 2015-01-29 16:07:25 +03:00
Alexander Udalov
2c8cad6628 Minor, inline some CompileEnvironmentUtil utilities 2015-01-28 19:58:34 +03:00
Alexander Udalov
7e988b04b4 Refactor compiler source root duplicate check 2015-01-28 19:58:34 +03:00
Alexander Udalov
93f02aeead Add source directories to classpath in CLI compiler
Move this logic from Ant and Maven plugins
2015-01-28 19:58:33 +03:00
Alexander Udalov
59937aad14 CLI compiler: add runtime after user's classpath
Otherwise weird compilation errors in our project are expected as soon as
kotlin-runtime.jar will contain modules from "core". Suppose a Java class from
core/ has changed; the CLI compiler will then see its own (old) version of that
class from kotlin-runtime.jar before the actual new version from sources
2015-01-28 19:58:30 +03:00