From fa5fa89bec4e6eac9502b4dfb4b0e84ffcaf4b59 Mon Sep 17 00:00:00 2001 From: Infendro Date: Thu, 8 Jan 2026 21:29:32 +0100 Subject: [PATCH] rename RunError to RuntimeFailure --- .../kotlin/com/infendro/cli/command/Command.kt | 2 +- .../com/infendro/cli/command/context/ContextParser.kt | 10 +++++----- .../com/infendro/cli/error/run/InvalidArgumentCount.kt | 2 +- .../com/infendro/cli/error/run/InvalidOptionCount.kt | 2 +- .../kotlin/com/infendro/cli/error/run/InvalidValue.kt | 2 +- .../com/infendro/cli/error/run/MalformedOption.kt | 2 +- .../com/infendro/cli/error/run/MissingOptionValue.kt | 2 +- .../cli/error/run/{RunError.kt => RuntimeFailure.kt} | 2 +- .../com/infendro/cli/error/run/UnexpectedArgument.kt | 2 +- .../com/infendro/cli/error/run/UnknownCommand.kt | 2 +- .../kotlin/com/infendro/cli/error/run/UnknownOption.kt | 2 +- .../kotlin/com/infendro/cli/parser/Parser.kt | 4 ++-- 12 files changed, 17 insertions(+), 17 deletions(-) rename src/commonMain/kotlin/com/infendro/cli/error/run/{RunError.kt => RuntimeFailure.kt} (68%) diff --git a/src/commonMain/kotlin/com/infendro/cli/command/Command.kt b/src/commonMain/kotlin/com/infendro/cli/command/Command.kt index 0faa25e..8d09800 100644 --- a/src/commonMain/kotlin/com/infendro/cli/command/Command.kt +++ b/src/commonMain/kotlin/com/infendro/cli/command/Command.kt @@ -31,7 +31,7 @@ sealed class Command private constructor( command.renderer.render(result.path)?.let { print(it) } } is ContextParser.Result.Failure -> { - println("error: ${result.error.message}") + println("error: ${result.failure.message}") val command = result.path.last() command.renderer.render(result.path)?.let { println() diff --git a/src/commonMain/kotlin/com/infendro/cli/command/context/ContextParser.kt b/src/commonMain/kotlin/com/infendro/cli/command/context/ContextParser.kt index 04d4e5c..f534d6f 100644 --- a/src/commonMain/kotlin/com/infendro/cli/command/context/ContextParser.kt +++ b/src/commonMain/kotlin/com/infendro/cli/command/context/ContextParser.kt @@ -19,13 +19,13 @@ internal class ContextParser( data class Failure( val path: List, - val error: RunError, + val failure: RuntimeFailure, ) : Result() } private fun success(context: Context) = Result.Success(context) private fun help(path: List) = Result.Help(path) - private fun failure(path: List, exception: RunError) = Result.Failure(path, exception) + private fun failure(path: List, exception: RuntimeFailure) = Result.Failure(path, exception) private var index = 0 private val current: String @@ -63,7 +63,7 @@ internal class ContextParser( if (cmd is Command.Fallback<*>) { val value = when (val result = cmd.parser.parse(current)) { is Parser.Result.Success<*> -> result.value - is Parser.Result.Failure<*> -> return failure(path, result.error) + is Parser.Result.Failure<*> -> return failure(path, result.failure) } commands[cmd.key] = value } @@ -91,7 +91,7 @@ internal class ContextParser( val value = when (val result = argument.parser.parse(trimmed)) { is Parser.Result.Success<*> -> result.value - is Parser.Result.Failure<*> -> return failure(path, result.error) + is Parser.Result.Failure<*> -> return failure(path, result.failure) } arguments[argument]!! += value argumentCount++ @@ -141,7 +141,7 @@ internal class ContextParser( text != null -> when (val result = option.parser.parse(current)) { is Parser.Result.Success<*> -> result.value - is Parser.Result.Failure<*> -> return failure(path, result.error) + is Parser.Result.Failure<*> -> return failure(path, result.failure) } option.flag -> option.fallback!! else -> return failure(path, MissingOptionValue(option)) diff --git a/src/commonMain/kotlin/com/infendro/cli/error/run/InvalidArgumentCount.kt b/src/commonMain/kotlin/com/infendro/cli/error/run/InvalidArgumentCount.kt index eee6b47..a03a585 100644 --- a/src/commonMain/kotlin/com/infendro/cli/error/run/InvalidArgumentCount.kt +++ b/src/commonMain/kotlin/com/infendro/cli/error/run/InvalidArgumentCount.kt @@ -5,7 +5,7 @@ import com.infendro.cli.command.argument.Argument class InvalidArgumentCount( val argument: Argument<*>, val count: Int, -) : RunError() { +) : RuntimeFailure() { override val message: String get() { val expected = when { diff --git a/src/commonMain/kotlin/com/infendro/cli/error/run/InvalidOptionCount.kt b/src/commonMain/kotlin/com/infendro/cli/error/run/InvalidOptionCount.kt index 7d85c92..49075af 100644 --- a/src/commonMain/kotlin/com/infendro/cli/error/run/InvalidOptionCount.kt +++ b/src/commonMain/kotlin/com/infendro/cli/error/run/InvalidOptionCount.kt @@ -5,7 +5,7 @@ import com.infendro.cli.command.option.Option class InvalidOptionCount( val option: Option<*>, val count: Int, -) : RunError() { +) : RuntimeFailure() { override val message: String get() { val expected = when { diff --git a/src/commonMain/kotlin/com/infendro/cli/error/run/InvalidValue.kt b/src/commonMain/kotlin/com/infendro/cli/error/run/InvalidValue.kt index 957308d..dfc2562 100644 --- a/src/commonMain/kotlin/com/infendro/cli/error/run/InvalidValue.kt +++ b/src/commonMain/kotlin/com/infendro/cli/error/run/InvalidValue.kt @@ -5,7 +5,7 @@ import kotlin.reflect.KClass class InvalidValue( val value: String, val type: KClass<*>, -) : RunError() { +) : RuntimeFailure() { override val message: String get() = """"$value" cannot be converted to ${type.simpleName ?: "Unknown"}""" } diff --git a/src/commonMain/kotlin/com/infendro/cli/error/run/MalformedOption.kt b/src/commonMain/kotlin/com/infendro/cli/error/run/MalformedOption.kt index bf3f09e..a79299a 100644 --- a/src/commonMain/kotlin/com/infendro/cli/error/run/MalformedOption.kt +++ b/src/commonMain/kotlin/com/infendro/cli/error/run/MalformedOption.kt @@ -2,7 +2,7 @@ package com.infendro.cli.error.run class MalformedOption( val option: String, -) : RunError() { +) : RuntimeFailure() { override val message: String get() = """malformed option "$option"""" } diff --git a/src/commonMain/kotlin/com/infendro/cli/error/run/MissingOptionValue.kt b/src/commonMain/kotlin/com/infendro/cli/error/run/MissingOptionValue.kt index 3e66f4b..030b42d 100644 --- a/src/commonMain/kotlin/com/infendro/cli/error/run/MissingOptionValue.kt +++ b/src/commonMain/kotlin/com/infendro/cli/error/run/MissingOptionValue.kt @@ -4,7 +4,7 @@ import com.infendro.cli.command.option.Option class MissingOptionValue( val option: Option<*>, -) : RunError() { +) : RuntimeFailure() { override val message: String get() = """no value provided for option "${option.name}"""" } diff --git a/src/commonMain/kotlin/com/infendro/cli/error/run/RunError.kt b/src/commonMain/kotlin/com/infendro/cli/error/run/RuntimeFailure.kt similarity index 68% rename from src/commonMain/kotlin/com/infendro/cli/error/run/RunError.kt rename to src/commonMain/kotlin/com/infendro/cli/error/run/RuntimeFailure.kt index b273109..a027c36 100644 --- a/src/commonMain/kotlin/com/infendro/cli/error/run/RunError.kt +++ b/src/commonMain/kotlin/com/infendro/cli/error/run/RuntimeFailure.kt @@ -1,5 +1,5 @@ package com.infendro.cli.error.run -abstract class RunError { +abstract class RuntimeFailure { abstract val message: String } diff --git a/src/commonMain/kotlin/com/infendro/cli/error/run/UnexpectedArgument.kt b/src/commonMain/kotlin/com/infendro/cli/error/run/UnexpectedArgument.kt index ab04ef7..121ae15 100644 --- a/src/commonMain/kotlin/com/infendro/cli/error/run/UnexpectedArgument.kt +++ b/src/commonMain/kotlin/com/infendro/cli/error/run/UnexpectedArgument.kt @@ -1,6 +1,6 @@ package com.infendro.cli.error.run -class UnexpectedArgument : RunError() { +class UnexpectedArgument : RuntimeFailure() { override val message: String get() = """unexpected argument""" } diff --git a/src/commonMain/kotlin/com/infendro/cli/error/run/UnknownCommand.kt b/src/commonMain/kotlin/com/infendro/cli/error/run/UnknownCommand.kt index 69903c4..e8f2730 100644 --- a/src/commonMain/kotlin/com/infendro/cli/error/run/UnknownCommand.kt +++ b/src/commonMain/kotlin/com/infendro/cli/error/run/UnknownCommand.kt @@ -2,7 +2,7 @@ package com.infendro.cli.error.run class UnknownCommand( val command: String, -) : RunError() { +) : RuntimeFailure() { override val message: String get() = """unknown command "$command"""" } diff --git a/src/commonMain/kotlin/com/infendro/cli/error/run/UnknownOption.kt b/src/commonMain/kotlin/com/infendro/cli/error/run/UnknownOption.kt index 1ccee98..da3e258 100644 --- a/src/commonMain/kotlin/com/infendro/cli/error/run/UnknownOption.kt +++ b/src/commonMain/kotlin/com/infendro/cli/error/run/UnknownOption.kt @@ -2,7 +2,7 @@ package com.infendro.cli.error.run class UnknownOption( val option: String, -) : RunError() { +) : RuntimeFailure() { override val message: String get() = """unknown option "$option"""" } diff --git a/src/commonMain/kotlin/com/infendro/cli/parser/Parser.kt b/src/commonMain/kotlin/com/infendro/cli/parser/Parser.kt index 4541b0d..257f2f0 100644 --- a/src/commonMain/kotlin/com/infendro/cli/parser/Parser.kt +++ b/src/commonMain/kotlin/com/infendro/cli/parser/Parser.kt @@ -1,7 +1,7 @@ package com.infendro.cli.parser import com.infendro.cli.error.run.InvalidValue -import com.infendro.cli.error.run.RunError +import com.infendro.cli.error.run.RuntimeFailure import kotlin.reflect.KClass abstract class Parser( @@ -13,7 +13,7 @@ abstract class Parser( ) : Result() data class Failure( - val error: RunError, + val failure: RuntimeFailure, ) : Result() }