createOrNull
@ExperimentalSince(version = KotoolsTypesVersion.V4_5_0)
Creates a NotEmptyList containing all the elements of the specified collection, or returns null
if the collection is empty.
Calling from Kotlin
Here's an example of calling this method from Kotlin code:
val collection: Collection<Int> = listOf(1, 2, 3)
val actual: NotEmptyList<Int>? = NotEmptyList.createOrNull(collection)
assertNotNull(actual)
Content copied to clipboard
The NotEmptyList type being an inline value class, this method is not available yet for Java users.
Please note that changes made to the original collection will not be reflected on the resulting NotEmptyList.
val original: MutableCollection<Int> = mutableListOf(1, 2, 3)
val notEmptyList: NotEmptyList<Int>? =
NotEmptyList.createOrNull(original)
assertEquals(expected = "$original", actual = "$notEmptyList")
original.clear()
assertNotEquals(illegal = "$original", actual = "$notEmptyList")
Content copied to clipboard
You can use the NotEmptyList.Companion.create method for throwing an exception instead of returning null
in case of invalid collection.