Use correct codegen for creating light classes for file facade
This commit is contained in:
@@ -192,18 +192,6 @@ public class ClassFileFactory implements OutputFileCollection {
|
||||
return codegen;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public PackageCodegen forFacadeLightClass(@NotNull FqName facadeFqName, @NotNull Collection<JetFile> files) {
|
||||
assert !isDone : "Already done!";
|
||||
PackageCodegen codegen = package2codegen.get(facadeFqName);
|
||||
if (codegen == null) {
|
||||
codegen = new PackageCodegen(state, files, facadeFqName.parent());
|
||||
package2codegen.put(facadeFqName, codegen);
|
||||
}
|
||||
|
||||
return codegen;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public MultifileClassCodegen forMultifileClass(@NotNull FqName facadeFqName, @NotNull Collection<JetFile> files) {
|
||||
assert !isDone : "Already done!";
|
||||
|
||||
+2
-1
@@ -42,6 +42,7 @@ import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.kotlin.codegen.CompilationErrorHandler;
|
||||
import org.jetbrains.kotlin.codegen.KotlinCodegenFacade;
|
||||
import org.jetbrains.kotlin.codegen.MultifileClassCodegen;
|
||||
import org.jetbrains.kotlin.codegen.PackageCodegen;
|
||||
import org.jetbrains.kotlin.codegen.binding.CodegenBinding;
|
||||
import org.jetbrains.kotlin.codegen.state.GenerationState;
|
||||
@@ -214,7 +215,7 @@ public class KotlinJavaFileStubProvider<T extends WithFileStubAndExtraDiagnostic
|
||||
|
||||
@Override
|
||||
public void generate(@NotNull GenerationState state, @NotNull Collection<JetFile> files) {
|
||||
PackageCodegen codegen = state.getFactory().forFacadeLightClass(facadeFqName, files);
|
||||
MultifileClassCodegen codegen = state.getFactory().forMultifileClass(facadeFqName, files);
|
||||
codegen.generate(CompilationErrorHandler.THROW_EXCEPTION);
|
||||
state.getFactory().asList();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user