diff options
author | kmb <kmb@google.com> | 2018-02-07 16:27:17 -0800 |
---|---|---|
committer | Ivan Gavrilovic <gavra@google.com> | 2018-05-04 10:37:23 +0100 |
commit | 0633971679f2f1e15eb2bb2c2326e2a0e26033c6 (patch) | |
tree | 3a5b7e00852ab8438a9f8484e5e567f6564b0e71 /java | |
parent | c69bee050bf45cc49fc500dd4a495181cb23a645 (diff) | |
download | desugar-0633971679f2f1e15eb2bb2c2326e2a0e26033c6.tar.gz |
Rename generated core classes during core library desugaring
RELNOTES: None.
PiperOrigin-RevId: 184915177
GitOrigin-RevId: 154317e1269b1925722754291a8c7181ccd005f6
Change-Id: I2974e07e3154ec481579cb191c48bc2f8d0af06f
Diffstat (limited to 'java')
-rw-r--r-- | java/com/google/devtools/build/android/desugar/CoreLibrarySupport.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/java/com/google/devtools/build/android/desugar/CoreLibrarySupport.java b/java/com/google/devtools/build/android/desugar/CoreLibrarySupport.java index 56e5f18..c6fd0b4 100644 --- a/java/com/google/devtools/build/android/desugar/CoreLibrarySupport.java +++ b/java/com/google/devtools/build/android/desugar/CoreLibrarySupport.java @@ -56,7 +56,14 @@ class CoreLibrarySupport { public boolean isRenamedCoreLibrary(String internalName) { String unprefixedName = rewriter.unprefix(internalName); - return renamedPrefixes.stream().anyMatch(prefix -> unprefixedName.startsWith(prefix)); + if (!unprefixedName.startsWith("java/")) { + return false; // shortcut + } + // Rename any classes desugar might generate under java/ (for emulated interfaces) as well as + // configured prefixes + return unprefixedName.contains("$$Lambda$") + || unprefixedName.endsWith("$$CC") + || renamedPrefixes.stream().anyMatch(prefix -> unprefixedName.startsWith(prefix)); } public String renameCoreLibrary(String internalName) { |