From c3534276b4af4e39c7d6b3f7c50c87dcc84fd9e5 Mon Sep 17 00:00:00 2001 From: Michael Bull Date: Sat, 21 Oct 2017 15:03:39 +0100 Subject: [PATCH] Rename error factory method to err Kotlin has it's own error method, therefore the IDE doesn't immediately prompt the user to import our error factory method. --- src/main/kotlin/com/mikebull94/result/And.kt | 2 +- .../kotlin/com/mikebull94/result/Iterable.kt | 6 ++-- src/main/kotlin/com/mikebull94/result/Map.kt | 6 ++-- .../kotlin/com/mikebull94/result/Result.kt | 2 +- .../kotlin/com/mikebull94/result/AndTest.kt | 2 +- .../kotlin/com/mikebull94/result/GetTest.kt | 4 +-- .../com/mikebull94/result/IterableTest.kt | 36 +++++++++---------- .../kotlin/com/mikebull94/result/MapTest.kt | 8 ++--- .../kotlin/com/mikebull94/result/OnTest.kt | 4 +-- .../kotlin/com/mikebull94/result/OrTest.kt | 4 +-- 10 files changed, 37 insertions(+), 37 deletions(-) diff --git a/src/main/kotlin/com/mikebull94/result/And.kt b/src/main/kotlin/com/mikebull94/result/And.kt index 40b18d2..bddbdcb 100644 --- a/src/main/kotlin/com/mikebull94/result/And.kt +++ b/src/main/kotlin/com/mikebull94/result/And.kt @@ -6,6 +6,6 @@ package com.mikebull94.result inline fun Result.andThen(transform: (V) -> Result): Result { return when (this) { is Ok -> transform(value) - is Error -> error(error) + is Error -> err(error) } } diff --git a/src/main/kotlin/com/mikebull94/result/Iterable.kt b/src/main/kotlin/com/mikebull94/result/Iterable.kt index 28b0399..179c0cb 100644 --- a/src/main/kotlin/com/mikebull94/result/Iterable.kt +++ b/src/main/kotlin/com/mikebull94/result/Iterable.kt @@ -13,7 +13,7 @@ inline fun Iterable.fold( is Ok -> { accumulator = operationResult.value } - is Error -> return error(operationResult.error) + is Error -> return err(operationResult.error) } } @@ -35,7 +35,7 @@ inline fun List.foldRight( is Ok -> { accumulator = operationResult.value } - is Error -> return error(operationResult.error) + is Error -> return err(operationResult.error) } } } @@ -55,7 +55,7 @@ fun Iterable>.combine(): Result, E> { return ok(map { when (it) { is Ok -> it.value - is Error -> return error(it.error) + is Error -> return err(it.error) } }) } diff --git a/src/main/kotlin/com/mikebull94/result/Map.kt b/src/main/kotlin/com/mikebull94/result/Map.kt index b840c22..dbba0a9 100644 --- a/src/main/kotlin/com/mikebull94/result/Map.kt +++ b/src/main/kotlin/com/mikebull94/result/Map.kt @@ -7,7 +7,7 @@ package com.mikebull94.result inline fun Result.map(transform: (V) -> U): Result { return when (this) { is Ok -> ok(transform(value)) - is Error -> error(error) + is Error -> err(error) } } @@ -18,7 +18,7 @@ inline fun Result.map(transform: (V) -> U): Result { inline fun Result.mapError(transform: (E) -> U): Result { return when (this) { is Ok -> ok(value) - is Error -> error(transform(error)) + is Error -> err(transform(error)) } } @@ -46,6 +46,6 @@ inline fun Result.mapEither( ): Result { return when (this) { is Ok -> ok(success(value)) - is Error -> error(failure(error)) + is Error -> err(failure(error)) } } diff --git a/src/main/kotlin/com/mikebull94/result/Result.kt b/src/main/kotlin/com/mikebull94/result/Result.kt index cc4cce6..a91ad78 100644 --- a/src/main/kotlin/com/mikebull94/result/Result.kt +++ b/src/main/kotlin/com/mikebull94/result/Result.kt @@ -7,7 +7,7 @@ package com.mikebull94.result sealed class Result fun ok(value: V) = Ok(value) -fun error(error: E) = Error(error) +fun err(error: E) = Error(error) class Ok internal constructor(val value: V) : Result() { override fun equals(other: Any?): Boolean { diff --git a/src/test/kotlin/com/mikebull94/result/AndTest.kt b/src/test/kotlin/com/mikebull94/result/AndTest.kt index cde55ed..e65acec 100644 --- a/src/test/kotlin/com/mikebull94/result/AndTest.kt +++ b/src/test/kotlin/com/mikebull94/result/AndTest.kt @@ -16,7 +16,7 @@ internal class AndTest { @Test internal fun `andThen should return the result error if not ok`() { - val result = ok(20).andThen { ok(it + 43) }.andThen { error(AndError) } + val result = ok(20).andThen { ok(it + 43) }.andThen { err(AndError) } result as Error diff --git a/src/test/kotlin/com/mikebull94/result/GetTest.kt b/src/test/kotlin/com/mikebull94/result/GetTest.kt index b1bbed2..4b8e754 100644 --- a/src/test/kotlin/com/mikebull94/result/GetTest.kt +++ b/src/test/kotlin/com/mikebull94/result/GetTest.kt @@ -15,7 +15,7 @@ internal class GetTest { @Test internal fun `get should return null if not ok`() { - val value = error(GetError).get() + val value = err(GetError).get() assertThat(value, equalTo(null)) } @@ -27,7 +27,7 @@ internal class GetTest { @Test internal fun `getOrElse should return default value if not ok`() { - val value = error(GetError).getOrElse("default") + val value = err(GetError).getOrElse("default") assertThat(value, equalTo("default")) } } diff --git a/src/test/kotlin/com/mikebull94/result/IterableTest.kt b/src/test/kotlin/com/mikebull94/result/IterableTest.kt index 778d90b..e14b9ea 100644 --- a/src/test/kotlin/com/mikebull94/result/IterableTest.kt +++ b/src/test/kotlin/com/mikebull94/result/IterableTest.kt @@ -34,8 +34,8 @@ internal class IterableTest { initial = 1, operation = { a, b -> when (b) { - (5 + 10) -> error(IterableError.IterableError1) - (5 + 10 + 15 + 20) -> error(IterableError.IterableError2) + (5 + 10) -> err(IterableError.IterableError1) + (5 + 10 + 15 + 20) -> err(IterableError.IterableError2) else -> ok(a * b) } } @@ -65,8 +65,8 @@ internal class IterableTest { initial = 38500, operation = { a, b -> when (b) { - (((38500 / 40) / 20) / 10) -> error(IterableError.IterableError1) - ((38500 / 40) / 20) -> error(IterableError.IterableError2) + (((38500 / 40) / 20) / 10) -> err(IterableError.IterableError1) + ((38500 / 40) / 20) -> err(IterableError.IterableError2) else -> ok(b / a) } } @@ -96,9 +96,9 @@ internal class IterableTest { val result = combine( ok(20), ok(40), - error(IterableError.IterableError1), + err(IterableError.IterableError1), ok(60), - error(IterableError.IterableError2), + err(IterableError.IterableError2), ok(80) ) @@ -112,9 +112,9 @@ internal class IterableTest { val values = getAll( ok("hello"), ok("big"), - error(IterableError.IterableError2), + err(IterableError.IterableError2), ok("wide"), - error(IterableError.IterableError1), + err(IterableError.IterableError1), ok("world") ) @@ -128,15 +128,15 @@ internal class IterableTest { @Test internal fun `getAllErrors should return all of the result errors`() { val errors = getAllErrors( - error(IterableError.IterableError2), + err(IterableError.IterableError2), ok("haskell"), - error(IterableError.IterableError2), + err(IterableError.IterableError2), ok("f#"), - error(IterableError.IterableError1), + err(IterableError.IterableError1), ok("elm"), - error(IterableError.IterableError1), + err(IterableError.IterableError1), ok("clojure"), - error(IterableError.IterableError2) + err(IterableError.IterableError2) ) assertThat(errors.size, equalTo(5)) @@ -150,15 +150,15 @@ internal class IterableTest { @Test internal fun `partition should return a pair of all the result values and errors`() { val pairs = partition( - error(IterableError.IterableError2), + err(IterableError.IterableError2), ok("haskell"), - error(IterableError.IterableError2), + err(IterableError.IterableError2), ok("f#"), - error(IterableError.IterableError1), + err(IterableError.IterableError1), ok("elm"), - error(IterableError.IterableError1), + err(IterableError.IterableError1), ok("clojure"), - error(IterableError.IterableError2) + err(IterableError.IterableError2) ) val values = pairs.first diff --git a/src/test/kotlin/com/mikebull94/result/MapTest.kt b/src/test/kotlin/com/mikebull94/result/MapTest.kt index 52581fb..30642e0 100644 --- a/src/test/kotlin/com/mikebull94/result/MapTest.kt +++ b/src/test/kotlin/com/mikebull94/result/MapTest.kt @@ -25,7 +25,7 @@ internal class MapTest { @Test internal fun `map should return the result error if not ok`() { - val result = error(MapError.HelloError).map { "hello $it" } + val result = err(MapError.HelloError).map { "hello $it" } result as Error @@ -44,7 +44,7 @@ internal class MapTest { .map { "$it me" } .andThen { when (it) { - "let me" -> error(MapError.CustomError("$it $it")) + "let me" -> err(MapError.CustomError("$it $it")) else -> ok("$it get") } } @@ -67,7 +67,7 @@ internal class MapTest { @Test internal fun `mapBoth should return the transformed result error if not ok`() { - val error = error(MapError.CustomError("this")).mapBoth( + val error = err(MapError.CustomError("this")).mapBoth( success = { "$it charming" }, failure = { "${it.reason} man" } ) @@ -89,7 +89,7 @@ internal class MapTest { @Test internal fun `mapEither should return the transformed result error if not ok`() { - val result = error("the reckless").mapEither( + val result = err("the reckless").mapEither( success = { "the wild youth" }, failure = { MapError.CustomError("the truth") } ) diff --git a/src/test/kotlin/com/mikebull94/result/OnTest.kt b/src/test/kotlin/com/mikebull94/result/OnTest.kt index 2bf6215..4d5617a 100644 --- a/src/test/kotlin/com/mikebull94/result/OnTest.kt +++ b/src/test/kotlin/com/mikebull94/result/OnTest.kt @@ -18,14 +18,14 @@ internal class OnTest { @Test internal fun `onSuccess should not invoke the callback when result is not ok`() { val counter = Counter(200) - error(CounterError).onSuccess { counter.count -= 50 } + err(CounterError).onSuccess { counter.count -= 50 } assertThat(counter.count, equalTo(200)) } @Test internal fun `onFailure should invoke the callback when result is not ok`() { val counter = Counter(555) - error(CounterError).onFailure { counter.count += 100 } + err(CounterError).onFailure { counter.count += 100 } assertThat(counter.count, equalTo(655)) } diff --git a/src/test/kotlin/com/mikebull94/result/OrTest.kt b/src/test/kotlin/com/mikebull94/result/OrTest.kt index e238a50..3307e82 100644 --- a/src/test/kotlin/com/mikebull94/result/OrTest.kt +++ b/src/test/kotlin/com/mikebull94/result/OrTest.kt @@ -15,7 +15,7 @@ internal class OrTest { @Test internal fun `or should return the default value if not ok`() { - val error = error(OrError).or(5000).get() + val error = err(OrError).or(5000).get() assertThat(error, equalTo(5000)) } @@ -27,7 +27,7 @@ internal class OrTest { @Test internal fun `extract should return the transformed result error if not ok`() { - val error = error("hello").extract { "$it darkness" } + val error = err("hello").extract { "$it darkness" } assertThat(error, equalTo("hello darkness")) } }