<div class='type'>Compose Modifier</div>

<a id='references'></a>


<h2 id="composed-inspectorinfo-factory">composed</h2>

<div class='sourceset sourceset-common'>Common</div>


```kotlin
fun Modifier.composed(
    inspectorInfo: InspectorInfo.() -> Unit = NoInspectorInfo,
    factory: @Composable Modifier.() -> Modifier,
): Modifier
```


Declare a just-in-time composition of a `Modifier` that will be composed for each element it
modifies. `composed` may be used to implement **stateful modifiers** that have instance-specific
state for each modified element, allowing the same `Modifier` instance to be safely reused for
multiple elements while maintaining element-specific state.

If `inspectorInfo` is specified this modifier will be visible to tools during development.
Specify the name and arguments of the original modifier.




`materialize` must be called to create instance-specific modifiers if you are directly applying a
`Modifier` to an element tree node.





<hr class="docs-overload-divider">


<h2 id="composed-fullyqualifiedname-key1-inspectorinfo-factory">composed</h2>

<div class='sourceset sourceset-common'>Common</div>


```kotlin
fun Modifier.composed(
    fullyQualifiedName: String,
    key1: Any?,
    inspectorInfo: InspectorInfo.() -> Unit = NoInspectorInfo,
    factory: @Composable Modifier.() -> Modifier,
): Modifier
```


Declare a just-in-time composition of a `Modifier` that will be composed for each element it
modifies. `composed` may be used to implement **stateful modifiers** that have instance-specific
state for each modified element, allowing the same `Modifier` instance to be safely reused for
multiple elements while maintaining element-specific state.

When keys are provided, `composed` produces a `Modifier` that will compare `equals` to another
modifier constructed with the same keys in order to take advantage of caching and skipping
optimizations. `fullyQualifiedName` should be the fully-qualified `import` name for your modifier
factory function, e.g. `com.example.myapp.ui.fancyPadding`.

If `inspectorInfo` is specified this modifier will be visible to tools during development.
Specify the name and arguments of the original modifier.




`materialize` must be called to create instance-specific modifiers if you are directly applying a
`Modifier` to an element tree node.





<hr class="docs-overload-divider">


<h2 id="composed-fullyqualifiedname-key1-key2-inspectorinfo-factory">composed</h2>

<div class='sourceset sourceset-common'>Common</div>


```kotlin
fun Modifier.composed(
    fullyQualifiedName: String,
    key1: Any?,
    key2: Any?,
    inspectorInfo: InspectorInfo.() -> Unit = NoInspectorInfo,
    factory: @Composable Modifier.() -> Modifier,
): Modifier
```


Declare a just-in-time composition of a `Modifier` that will be composed for each element it
modifies. `composed` may be used to implement **stateful modifiers** that have instance-specific
state for each modified element, allowing the same `Modifier` instance to be safely reused for
multiple elements while maintaining element-specific state.

When keys are provided, `composed` produces a `Modifier` that will compare `equals` to another
modifier constructed with the same keys in order to take advantage of caching and skipping
optimizations. `fullyQualifiedName` should be the fully-qualified `import` name for your modifier
factory function, e.g. `com.example.myapp.ui.fancyPadding`.

If `inspectorInfo` is specified this modifier will be visible to tools during development.
Specify the name and arguments of the original modifier.




`materialize` must be called to create instance-specific modifiers if you are directly applying a
`Modifier` to an element tree node.





<hr class="docs-overload-divider">


<h2 id="composed-fullyqualifiedname-key1-key2-key3-inspectorinfo-factory">composed</h2>

<div class='sourceset sourceset-common'>Common</div>


```kotlin
fun Modifier.composed(
    fullyQualifiedName: String,
    key1: Any?,
    key2: Any?,
    key3: Any?,
    inspectorInfo: InspectorInfo.() -> Unit = NoInspectorInfo,
    factory: @Composable Modifier.() -> Modifier,
): Modifier
```


Declare a just-in-time composition of a `Modifier` that will be composed for each element it
modifies. `composed` may be used to implement **stateful modifiers** that have instance-specific
state for each modified element, allowing the same `Modifier` instance to be safely reused for
multiple elements while maintaining element-specific state.

When keys are provided, `composed` produces a `Modifier` that will compare `equals` to another
modifier constructed with the same keys in order to take advantage of caching and skipping
optimizations. `fullyQualifiedName` should be the fully-qualified `import` name for your modifier
factory function, e.g. `com.example.myapp.ui.fancyPadding`.

If `inspectorInfo` is specified this modifier will be visible to tools during development.
Specify the name and arguments of the original modifier.




`materialize` must be called to create instance-specific modifiers if you are directly applying a
`Modifier` to an element tree node.





<hr class="docs-overload-divider">


<h2 id="composed-fullyqualifiedname-inspectorinfo-factory">composed</h2>

<div class='sourceset sourceset-common'>Common</div>


```kotlin
fun Modifier.composed(
    fullyQualifiedName: String,
    vararg keys: Any?,
    inspectorInfo: InspectorInfo.() -> Unit = NoInspectorInfo,
    factory: @Composable Modifier.() -> Modifier,
): Modifier
```


Declare a just-in-time composition of a `Modifier` that will be composed for each element it
modifies. `composed` may be used to implement **stateful modifiers** that have instance-specific
state for each modified element, allowing the same `Modifier` instance to be safely reused for
multiple elements while maintaining element-specific state.

When keys are provided, `composed` produces a `Modifier` that will compare `equals` to another
modifier constructed with the same keys in order to take advantage of caching and skipping
optimizations. `fullyQualifiedName` should be the fully-qualified `import` name for your modifier
factory function, e.g. `com.example.myapp.ui.fancyPadding`.

If `inspectorInfo` is specified this modifier will be visible to tools during development.
Specify the name and arguments of the original modifier.




`materialize` must be called to create instance-specific modifiers if you are directly applying a
`Modifier` to an element tree node.