diff --git a/src/main/kotlin/net/hareworks/kommand-lib/arguments/ArgumentTypes.kt b/src/main/kotlin/net/hareworks/kommand-lib/arguments/ArgumentTypes.kt index 0d64484..5e8d905 100644 --- a/src/main/kotlin/net/hareworks/kommand-lib/arguments/ArgumentTypes.kt +++ b/src/main/kotlin/net/hareworks/kommand-lib/arguments/ArgumentTypes.kt @@ -29,6 +29,11 @@ class WordArgument : KommandArgument { override fun build(): ArgumentType = StringArgumentType.word() } +class GreedyStringArgument : KommandArgument { + override fun build(): ArgumentType = StringArgumentType.greedyString() +} + + class IntegerArgument( private val min: Int = Int.MIN_VALUE, private val max: Int = Int.MAX_VALUE diff --git a/src/main/kotlin/net/hareworks/kommand-lib/dsl/RegistryBuilders.kt b/src/main/kotlin/net/hareworks/kommand-lib/dsl/RegistryBuilders.kt index 12fd9d4..87d110f 100644 --- a/src/main/kotlin/net/hareworks/kommand-lib/dsl/RegistryBuilders.kt +++ b/src/main/kotlin/net/hareworks/kommand-lib/dsl/RegistryBuilders.kt @@ -128,6 +128,9 @@ abstract class BranchScope internal constructor( fun string(name: String, block: ValueBuilder.() -> Unit = {}) = argument(name, WordArgument(), block) + fun greedyString(name: String, block: ValueBuilder.() -> Unit = {}) = argument(name, GreedyStringArgument(), block) + + fun integer( name: String, min: Int = Int.MIN_VALUE,