summaryrefslogtreecommitdiff
path: root/java/com/google/devtools/build/android/desugar/InterfaceDesugaring.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/google/devtools/build/android/desugar/InterfaceDesugaring.java')
-rw-r--r--java/com/google/devtools/build/android/desugar/InterfaceDesugaring.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/java/com/google/devtools/build/android/desugar/InterfaceDesugaring.java b/java/com/google/devtools/build/android/desugar/InterfaceDesugaring.java
index f17f114..0a10df1 100644
--- a/java/com/google/devtools/build/android/desugar/InterfaceDesugaring.java
+++ b/java/com/google/devtools/build/android/desugar/InterfaceDesugaring.java
@@ -47,6 +47,7 @@ class InterfaceDesugaring extends ClassVisitor {
private final ClassVsInterface interfaceCache;
private final DependencyCollector depsCollector;
+ private final CoreLibrarySupport coreLibrarySupport;
private final ClassReaderFactory bootclasspath;
private final ClassLoader targetLoader;
private final GeneratedClassStore store;
@@ -63,6 +64,7 @@ class InterfaceDesugaring extends ClassVisitor {
ClassVisitor dest,
ClassVsInterface interfaceCache,
DependencyCollector depsCollector,
+ @Nullable CoreLibrarySupport coreLibrarySupport,
ClassReaderFactory bootclasspath,
ClassLoader targetLoader,
GeneratedClassStore store,
@@ -70,6 +72,7 @@ class InterfaceDesugaring extends ClassVisitor {
super(Opcodes.ASM6, dest);
this.interfaceCache = interfaceCache;
this.depsCollector = depsCollector;
+ this.coreLibrarySupport = coreLibrarySupport;
this.bootclasspath = bootclasspath;
this.targetLoader = targetLoader;
this.store = store;
@@ -214,6 +217,10 @@ class InterfaceDesugaring extends ClassVisitor {
internalName,
desc);
++numberOfDefaultMethods;
+ if (coreLibrarySupport != null) {
+ coreLibrarySupport.registerIfEmulatedCoreInterface(
+ access, internalName, name, desc, exceptions);
+ }
abstractDest =
super.visitMethod(access | Opcodes.ACC_ABSTRACT, name, desc, signature, exceptions);
}