# SemanticsSelector

Artifact: [androidx.compose.ui:ui-test](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/test/SemanticsSelector.kt+class:androidx.compose.ui.test.SemanticsSelector) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.0.0) Common/AllAndroid/JVM
- Cmn

  ```
  class SemanticsSelector
  ```

*** ** * ** ***

Projects the given set of nodes to a new set of nodes.

## Summary

| ### Public constructors |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/test/SemanticsSelector#SemanticsSelector(kotlin.String,kotlin.Boolean,androidx.compose.ui.test.SemanticsSelector,kotlin.Function1)( description: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, requiresExactlyOneNode: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html, chainedInputSelector: https://developer.android.com/reference/kotlin/androidx/compose/ui/test/SemanticsSelector?, selector: (https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-iterable/index.html<https://developer.android.com/reference/kotlin/androidx/compose/ui/semantics/SemanticsNode>) -> https://developer.android.com/reference/kotlin/androidx/compose/ui/test/SelectionResult )` | Cmn |

| ### Public functions |
|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/test/SelectionResult` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/test/SemanticsSelector#map(kotlin.collections.Iterable,kotlin.String)(nodes: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-iterable/index.html<https://developer.android.com/reference/kotlin/androidx/compose/ui/semantics/SemanticsNode>, errorOnFail: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html)` Maps the given list of nodes to a new list of nodes. | Cmn |

| ### Public properties |
|---|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/test/SemanticsSelector#description()` Description that is displayed to the developer in error outputs. | Cmn |

## Public constructors

### SemanticsSelector

Cmn Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.0.0)

```
SemanticsSelector(
    description: String,
    requiresExactlyOneNode: Boolean,
    chainedInputSelector: SemanticsSelector? = null,
    selector: (Iterable<SemanticsNode>) -> SelectionResult
)
```

| Parameters |
|---|---|
| `description: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` | Description that is displayed to the developer in error outputs. |
| `requiresExactlyOneNode: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | Whether this selector should expect to receive exactly 1 node. |
| `chainedInputSelector: https://developer.android.com/reference/kotlin/androidx/compose/ui/test/SemanticsSelector? = null` | Optional selector to apply before this selector gets applied. |
| `selector: (https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-iterable/index.html<https://developer.android.com/reference/kotlin/androidx/compose/ui/semantics/SemanticsNode>) -> https://developer.android.com/reference/kotlin/androidx/compose/ui/test/SelectionResult` | The lambda that implements the projection. |

## Public functions

### map

Cmn Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.0.0)

```
fun map(nodes: Iterable<SemanticsNode>, errorOnFail: String): SelectionResult
```

Maps the given list of nodes to a new list of nodes.

| Throws |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-assertion-error/index.html` | if required prerequisites to perform the selection were not satisfied. |

## Public properties

### description

Cmn Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.0.0)

```
val description: String
```

Description that is displayed to the developer in error outputs.