Interface InvokeDynamicDesugarizer
- All Known Implementing Classes:
RecordMethodsDesugarizer,StringConcatDesugarizer
public interface InvokeDynamicDesugarizer
Lowers one kind of invokedynamic (identified by its bootstrap method) to equivalent plain Jimple,
which
InvokeDynamicDesugarer puts in place of the invokedynamic
statement.-
Method Summary
Modifier and TypeMethodDescriptionbooleanapplies(@NonNull JDynamicInvokeExpr expr) Whether this desugarizer handlesexpr.static booleanbootstrappedBy(@NonNull JDynamicInvokeExpr expr, @NonNull String className) Whetherexpr's bootstrap method is declared byclassName.booleandesugar(@NonNull JDynamicInvokeExpr expr, @Nullable LValue result, @NonNull Fragment code) Emits code intocodethat does whatexprdoes and stores its value intoresult.
-
Method Details
-
applies
Whether this desugarizer handlesexpr. -
desugar
Emits code intocodethat does whatexprdoes and stores its value intoresult.- Parameters:
result- where the invokedynamic's value goes,nullif it is discarded- Returns:
- whether
exprcould be lowered; if not, the invokedynamic stays
-
bootstrappedBy
Whetherexpr's bootstrap method is declared byclassName.
-