JakeWharton/diffuse

Support hiding of lambda class and accessor method numbers

jrodbx opened this issue · 0 comments

On CI, we diff the method lists of the ancestor commit and HEAD to surface any hidden methods added in the change.

One recent PR gave the following diff:

@@ -32495,2 +32495,2 @@
-com.squareup.cash.ui.MainActivity lambda$checkForUpdate$17$MainActivity(Throwable)
-com.squareup.cash.ui.MainActivity lambda$handleScenarioPlanError$21$MainActivity(CashAlertDialog, View)
+com.squareup.cash.ui.MainActivity lambda$checkForUpdate$19$MainActivity(Throwable)
+com.squareup.cash.ui.MainActivity lambda$handleScenarioPlanError$23$MainActivity(CashAlertDialog, View)
@@ -32500,4 +32500,4 @@
-com.squareup.cash.ui.MainActivity lambda$refreshSessionToken$14$MainActivity(StringPreference, RefreshSessionResponse)
-com.squareup.cash.ui.MainActivity lambda$refreshSessionToken$15$MainActivity(Throwable)
-com.squareup.cash.ui.MainActivity lambda$showUpgradeDialog$18$MainActivity(CashAlertDialog, View)
-com.squareup.cash.ui.MainActivity lambda$startOnboardingFlow$10$MainActivity(Throwable)
+com.squareup.cash.ui.MainActivity lambda$refreshSessionToken$16$MainActivity(StringPreference, RefreshSessionResponse)
+com.squareup.cash.ui.MainActivity lambda$refreshSessionToken$17$MainActivity(Throwable)
+com.squareup.cash.ui.MainActivity lambda$showUpgradeDialog$20$MainActivity(CashAlertDialog, View)
+com.squareup.cash.ui.MainActivity lambda$startOnboardingFlow$12$MainActivity(Throwable)
@@ -32570,2 +32570,7 @@
-com.squareup.cash.ui.MainActivity$$Lambda$27 <init>(MainActivity, Window)
-com.squareup.cash.ui.MainActivity$$Lambda$27 run()
+com.squareup.cash.ui.MainActivity$$Lambda$27 <clinit>()
+com.squareup.cash.ui.MainActivity$$Lambda$27 <init>()
+com.squareup.cash.ui.MainActivity$$Lambda$27 test(Object)
+com.squareup.cash.ui.MainActivity$$Lambda$28 <init>(MainActivity)
+com.squareup.cash.ui.MainActivity$$Lambda$28 apply(Object)
+com.squareup.cash.ui.MainActivity$$Lambda$29 <init>(MainActivity, Window)
+com.squareup.cash.ui.MainActivity$$Lambda$29 run()
@@ -32581,3 +32586,2 @@
-com.squareup.cash.ui.MainActivity$$Lambda$7 <clinit>()
-com.squareup.cash.ui.MainActivity$$Lambda$7 <init>()
-com.squareup.cash.ui.MainActivity$$Lambda$7 test(Object)
+com.squareup.cash.ui.MainActivity$$Lambda$7 <init>(MainActivity)
+com.squareup.cash.ui.MainActivity$$Lambda$7 apply(Object)
@@ -60033,0 +60038,14 @@
+io.reactivex.internal.operators.maybe.MaybeFlatMapSingle <init>(MaybeSource, Function)
+io.reactivex.internal.operators.maybe.MaybeFlatMapSingle subscribeActual(SingleObserver)
+io.reactivex.internal.operators.maybe.MaybeFlatMapSingle$FlatMapMaybeObserver <init>(SingleObserver, Function)
+io.reactivex.internal.operators.maybe.MaybeFlatMapSingle$FlatMapMaybeObserver dispose()
+io.reactivex.internal.operators.maybe.MaybeFlatMapSingle$FlatMapMaybeObserver get()
+io.reactivex.internal.operators.maybe.MaybeFlatMapSingle$FlatMapMaybeObserver isDisposed()
+io.reactivex.internal.operators.maybe.MaybeFlatMapSingle$FlatMapMaybeObserver onComplete()
+io.reactivex.internal.operators.maybe.MaybeFlatMapSingle$FlatMapMaybeObserver onError(Throwable)
+io.reactivex.internal.operators.maybe.MaybeFlatMapSingle$FlatMapMaybeObserver onSubscribe(Disposable)
+io.reactivex.internal.operators.maybe.MaybeFlatMapSingle$FlatMapMaybeObserver onSuccess(Object)
+io.reactivex.internal.operators.maybe.MaybeFlatMapSingle$FlatMapSingleObserver <init>(AtomicReference, SingleObserver)
+io.reactivex.internal.operators.maybe.MaybeFlatMapSingle$FlatMapSingleObserver onError(Throwable)
+io.reactivex.internal.operators.maybe.MaybeFlatMapSingle$FlatMapSingleObserver onSubscribe(Disposable)
+io.reactivex.internal.operators.maybe.MaybeFlatMapSingle$FlatMapSingleObserver onSuccess(Object)

Note that in the first two segments, the lambda accessor methods are shifted down by two in the enclosing class -- a no-op in our case.

A feature request proposal would strip the numbering when the --hide-synthetic-numbers flag is enabled, allowing the diff to be more indicative of the change to the method list.