# ProvidableModifierLocal

Artifact: [androidx.compose.ui:ui](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/modifier/ModifierLocal.kt+class:androidx.compose.ui.modifier.ProvidableModifierLocal) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.1.0) Common/All
- Cmn

  ```
  class ProvidableModifierLocal<T : Any?> : ModifierLocal<T>
  ```

|---|---|---|
| [kotlin.Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) |||
| ↳ | [androidx.compose.ui.modifier.ModifierLocal](https://developer.android.com/reference/kotlin/androidx/compose/ui/modifier/ModifierLocal)\<T\> ||
|   | ↳ | [androidx.compose.ui.modifier.ProvidableModifierLocal](https://developer.android.com/reference/kotlin/androidx/compose/ui/modifier/ProvidableModifierLocal) |

*** ** * ** ***

`https://developer.android.com/reference/kotlin/androidx/compose/ui/modifier/ProvidableModifierLocal`s are `https://developer.android.com/reference/kotlin/androidx/compose/ui/modifier/ModifierLocal`s that can be used to provide values using a `https://developer.android.com/reference/kotlin/androidx/compose/ui/modifier/ModifierLocalProvider`.

When you create an instance of a `https://developer.android.com/reference/kotlin/androidx/compose/ui/modifier/ProvidableModifierLocal`, and want to prevent users of your library from providing new values but want to allow the values to be consumed, expose a `https://developer.android.com/reference/kotlin/androidx/compose/ui/modifier/ModifierLocal` instead.

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/modifier/ModifierLocal` |   |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/modifier/package-summary#modifierLocalOf(kotlin.Function0)` |   |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/modifier/modifierLocalProvider.modifier#(androidx.compose.ui.Modifier).modifierLocalProvider(androidx.compose.ui.modifier.ProvidableModifierLocal,kotlin.Function0)` |   |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/modifier/modifierLocalConsumer.modifier#(androidx.compose.ui.Modifier).modifierLocalConsumer(kotlin.Function1)` |   |

## Summary

| ### Public constructors |
|---|---|
| `<T : https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html?> https://developer.android.com/reference/kotlin/androidx/compose/ui/modifier/ProvidableModifierLocal#ProvidableModifierLocal(kotlin.Function0)(defaultFactory: () -> T)` | Cmn |

## Public constructors

### ProvidableModifierLocal

Cmn

```
<T : Any?> ProvidableModifierLocal(defaultFactory: () -> T)
```