# Optimization

# Optimization

<br />

```
@Incubating
public interface Optimization
```

<br />

*** ** * ** ***

DSL object for configurations aimed for optimizing build process(e.g. speed, correctness). This DSL object is applicable to buildTypes and productFlavors.

## Summary

| ### Public methods |
|--------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `abstract void`    | `@`[Incubating](https://docs.gradle.org/current/javadoc/org/gradle/api/Incubating.html) [baselineProfile](https://developer.android.com/reference/tools/gradle-api/8.3/null/com/android/build/api/dsl/Optimization#baselineProfile(kotlin.Function1))`(` ` @`[ExtensionFunctionType](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-extension-function-type/index.html)` @`[NonNull](https://developer.android.com/reference/tools/gradle-api/8.3/null/androidx/annotation/NonNull)` Function1<@`[NonNull](https://developer.android.com/reference/tools/gradle-api/8.3/null/androidx/annotation/NonNull)` `[BaselineProfile](https://developer.android.com/reference/tools/gradle-api/8.3/null/com/android/build/api/dsl/BaselineProfile)`, `[Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`> action` `)` Configure baseline profile properties     |
| `abstract void`    | `@`[Incubating](https://docs.gradle.org/current/javadoc/org/gradle/api/Incubating.html) [keepRules](https://developer.android.com/reference/tools/gradle-api/8.3/null/com/android/build/api/dsl/Optimization#keepRules(kotlin.Function1))`(` ` @`[ExtensionFunctionType](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-extension-function-type/index.html)` @`[NonNull](https://developer.android.com/reference/tools/gradle-api/8.3/null/androidx/annotation/NonNull)` Function1<@`[NonNull](https://developer.android.com/reference/tools/gradle-api/8.3/null/androidx/annotation/NonNull)` `[KeepRules](https://developer.android.com/reference/tools/gradle-api/8.3/null/com/android/build/api/dsl/KeepRules)`, `[Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`> action` `)` Configure keep rules inherited from external library dependencies |

## Public methods

### baselineProfile

```
@Incubating
abstract void baselineProfile(
    @ExtensionFunctionType @NonNull Function1<@NonNull BaselineProfile, Unit> action
)
```

Configure baseline profile properties  

### keepRules

```
@Incubating
abstract void keepRules(
    @ExtensionFunctionType @NonNull Function1<@NonNull KeepRules, Unit> action
)
```

Configure keep rules inherited from external library dependencies