doc / ch.tutteli.atrium.logic.utils

Package ch.tutteli.atrium.logic.utils



class ArgumentMapperBuilder<out T>

Builder to map variable length arguments formulated as (first: T, vararg others : T) to something else.


class ArgumentToNullOrMapperBuilder<T : Any>

Builder to map variable length arguments formulated as (first: T, vararg others : T) to something else.



fun <T> expectLambda(assertionCreator: Expect<T>.() -> Unit): Expect<T>.() -> Unit

Can be used in places where a lambda with receiver is required where the receiver is of type Expect<T>.


fun <T> AssertionContainer<*>.iterableLikeToIterable(iterableLike: IterableLike): Iterable<T>

Transforms the given IterableLike to an Iterable with an element type T.


fun <T> mapArguments(first: T, others: Array<out T>): ArgumentMapperBuilder<T>
fun mapArguments(first: Byte, others: ByteArray): ArgumentMapperBuilder<Byte>
fun mapArguments(first: Char, others: CharArray): ArgumentMapperBuilder<Char>
fun mapArguments(first: Short, others: ShortArray): ArgumentMapperBuilder<Short>
fun mapArguments(first: Int, others: IntArray): ArgumentMapperBuilder<Int>
fun mapArguments(first: Long, others: LongArray): ArgumentMapperBuilder<Long>
fun mapArguments(first: Float, others: FloatArray): ArgumentMapperBuilder<Float>
fun mapArguments(first: Double, others: DoubleArray): ArgumentMapperBuilder<Double>
fun mapArguments(first: Boolean, others: BooleanArray): ArgumentMapperBuilder<Boolean>

Creates a ArgumentMapperBuilder with the given first and others as arguments; specify the mapping as such using a subsequent step in the building process.

fun <T, R> mapArguments(first: T, others: Array<out T>, mapper: (T) -> R): Pair<R, Array<out R>>
fun <R> mapArguments(first: Byte, others: ByteArray, mapper: (Byte) -> R): Pair<R, Array<out R>>
fun <R> mapArguments(first: Char, others: CharArray, mapper: (Char) -> R): Pair<R, Array<out R>>
fun <R> mapArguments(first: Short, others: ShortArray, mapper: (Short) -> R): Pair<R, Array<out R>>
fun <R> mapArguments(first: Int, others: IntArray, mapper: (Int) -> R): Pair<R, Array<out R>>
fun <R> mapArguments(first: Long, others: LongArray, mapper: (Long) -> R): Pair<R, Array<out R>>
fun <R> mapArguments(first: Float, others: FloatArray, mapper: (Float) -> R): Pair<R, Array<out R>>
fun <R> mapArguments(first: Double, others: DoubleArray, mapper: (Double) -> R): Pair<R, Array<out R>>
fun <R> mapArguments(first: Boolean, others: BooleanArray, mapper: (Boolean) -> R): Pair<R, Array<out R>>

Maps the given first and others to the given type R with the help of the given mapper.


fun <T> nullable(t: T): T?

Turns the given type into a nullable type.

fun <T> nullable(t: KFunction0<T>): KFunction0<T?>
fun <T1, R> nullable(t: KFunction1<T1, R>): KFunction1<T1, R?>
fun <T1, T2, R> nullable(t: KFunction2<T1, T2, R>): KFunction2<T1, T2, R?>
fun <T1, T2, T3, R> nullable(t: KFunction3<T1, T2, T3, R>): KFunction3<T1, T2, T3, R?>
fun <T1, T2, T3, T4, R> nullable(t: KFunction4<T1, T2, T3, T4, R>): KFunction4<T1, T2, T3, T4, R?>
fun <T1, T2, T3, T4, T5, R> nullable(t: KFunction5<T1, T2, T3, T4, T5, R>): KFunction5<T1, T2, T3, T4, T5, R?>

Turns the given function reference into a function reference with a nullable return type.


fun <T> nullableContainer(iterable: Iterable<T>): Iterable<T?>

Turns an Iterable into an iterable with a nullable element type.

fun <T> nullableContainer(arr: Array<out T>): Array<out T?>

Turns an Array into an array with a nullable element type.


fun <K, V : Any> nullableKeyMap(map: Map<out K, V>): Map<out K?, V>

Turns a Map into a map with a nullable key type.


fun <K, V> nullableKeyValueMap(map: Map<out K, V>): Map<out K?, V?>

Turns a Map into a map with a nullable key and a nullable value type.


fun <K : Any, V> nullableValueMap(map: Map<K, V>): Map<K, V?>

Turns a Map into a map with a nullable value type.


fun <T : Any> ArgumentMapperBuilder<T?>.toNullOr(): ArgumentToNullOrMapperBuilder<T>

Maps each argument to null if it is already null and if not, then ...


fun <T> CharSequenceContains.CheckerStepLogic<*, *>.toVarArg(iterableLike: IterableLike): Pair<T, Array<out T>>
fun <T> CharSequenceContains.EntryPointStepLogic<*, *>.toVarArg(iterableLike: IterableLike): Pair<T, Array<out T>>
fun <T> IterableLikeContains.CheckerStepLogic<*, *, *>.toVarArg(iterableLike: IterableLike): Pair<T, Array<out T>>
fun <T> IterableLikeContains.EntryPointStepLogic<*, *, *>.toVarArg(iterableLike: IterableLike): Pair<T, Array<out T>>
fun <T> AssertionContainer<*>.toVarArg(iterableLike: IterableLike): Pair<T, Array<out T>>

Transforms the given IterableLike to Pair<T, Array<out T>> with the intend that it can be easily used for a function requiring T, vararg T

fun <T> toVarArg(iterable: Iterable<T>): Pair<T, Array<out T>>

Transforms the given Iterable to Pair<T, Array<out T>> with the intend that it can be easily used for a function requiring T, vararg T