SenderScope
Functions
Link copied to clipboard
fun <S> SenderScope<S>.booleanParameter(id: TypedIdentifier<Boolean>, description: String = ""): StructureElement<S, BooleanParameter<S>>
fun <S> SenderScope<S>.booleanParameter(name: String, description: String = ""): StructureElement<S, BooleanParameter<S>>
Link copied to clipboard
fun <S> SenderScope<S>.byteParameter(id: TypedIdentifier<Byte>, min: Byte = Byte.MIN_VALUE, max: Byte = Byte.MAX_VALUE, description: String = ""): StructureElement<S, ByteParameter<S>>
fun <S> SenderScope<S>.byteParameter(name: String, min: Byte = Byte.MIN_VALUE, max: Byte = Byte.MAX_VALUE, description: String = ""): StructureElement<S, ByteParameter<S>>
Link copied to clipboard
Link copied to clipboard
fun <S, T : Any> SenderScope<S>.defaultValidated(value: ContextualValue<S, T>, requirement: Requirement<S> = requirement { SenderValidationResult.success() }): ValidatedDefault<S, T>
Link copied to clipboard
fun <S> SenderScope<S>.doubleParameter(id: TypedIdentifier<Double>, min: Double = -Double.MAX_VALUE, max: Double = Double.MAX_VALUE, description: String = ""): StructureElement<S, DoubleParameter<S>>
fun <S> SenderScope<S>.doubleParameter(name: String, min: Double = -Double.MAX_VALUE, max: Double = Double.MAX_VALUE, description: String = ""): StructureElement<S, DoubleParameter<S>>
Link copied to clipboard
inline fun <S, T : Enum<T>, Aliasable> SenderScope<S>.enumParameter(id: TypedIdentifier<T>, enum: KClass<T>, description: String = ""): StructureElement<S, EnumParameter<S, T>>
inline fun <S, T : Enum<T>> SenderScope<S>.enumParameter(id: TypedIdentifier<T>, enum: KClass<T>, description: String = ""): StructureElement<S, EnumParameter<S, T>>
inline fun <S, T : Enum<T>, Aliasable> SenderScope<S>.enumParameter(name: String, enum: KClass<T>, description: String = ""): StructureElement<S, EnumParameter<S, T>>
inline fun <S, T : Enum<T>> SenderScope<S>.enumParameter(name: String, enum: KClass<T>, description: String = ""): StructureElement<S, EnumParameter<S, T>>
Link copied to clipboard
fun <S> SenderScope<S>.flag(id: TypedIdentifier<Boolean>, aliases: Set<String> = setOf(), description: String = ""): StructureElement<S, Flag<S, Boolean>>
fun <S> SenderScope<S>.flag(name: String, aliases: Set<String> = setOf(), description: String = ""): StructureElement<S, Flag<S, Boolean>>
fun <S, T : Any> SenderScope<S>.flag(id: TypedIdentifier<T>, default: ContextualValue<S, T>, presentValue: ContextualValue<S, T>, aliases: Set<String> = setOf(), description: String = ""): StructureElement<S, Flag<S, T>>
Link copied to clipboard
fun <S> SenderScope<S>.floatParameter(id: TypedIdentifier<Float>, min: Float = -Float.MAX_VALUE, max: Float = Float.MAX_VALUE, description: String = ""): StructureElement<S, FloatParameter<S>>
fun <S> SenderScope<S>.floatParameter(name: String, min: Float = -Float.MAX_VALUE, max: Float = Float.MAX_VALUE, description: String = ""): StructureElement<S, FloatParameter<S>>
Link copied to clipboard
fun <S> SenderScope<S>.group(vararg elements: StructureElement<S, Groupable<S, *>>, description: String = ""): StructureElement<S, Group<S>>
Link copied to clipboard
fun <S, T : Any> SenderScope<S>.helper(value: ContextualValue<S, T>): StructureElement<S, Helper<S, T>>
Link copied to clipboard
fun <S> SenderScope<S>.intParameter(id: TypedIdentifier<Int>, min: Int = Int.MIN_VALUE, max: Int = Int.MAX_VALUE, description: String = ""): StructureElement<S, IntParameter<S>>
fun <S> SenderScope<S>.intParameter(name: String, min: Int = Int.MIN_VALUE, max: Int = Int.MAX_VALUE, description: String = ""): StructureElement<S, IntParameter<S>>
Link copied to clipboard
fun <S, T : Any> SenderScope<S>.listElementParameter(id: TypedIdentifier<T>, list: ContextualValue<S, List<T>>, onEmpty: ExecutionContext<S>.() -> ExecutionResult, description: String = ""): StructureElement<S, ListElementParameter<S, T>>
inline fun <S, T : Any> SenderScope<S>.listElementParameter(name: String, noinline list: ContextualValue<S, List<T>>, noinline onEmpty: ExecutionContext<S>.() -> ExecutionResult, description: String = ""): StructureElement<S, ListElementParameter<S, T>>
Link copied to clipboard
fun <S, T : Any> SenderScope<S>.listParameter(id: TypedIdentifier<List<T>>, parameter: StructureElement<S, Parameter.Size1<S, T>>, description: String = ""): StructureElement<S, ListParameter<S, T>>
fun <S, T : Any> SenderScope<S>.listParameter(name: String, parameter: StructureElement<S, Parameter.Size1<S, T>>, description: String = ""): StructureElement<S, ListParameter<S, T>>
Link copied to clipboard
fun <S> SenderScope<S>.literalParameter(id: TypedIdentifier<String>, aliases: Set<String> = setOf(), description: String = ""): StructureElement<S, LiteralParameter<S>>
fun <S> SenderScope<S>.literalParameter(name: String, aliases: Set<String> = setOf(), description: String = ""): StructureElement<S, LiteralParameter<S>>
Link copied to clipboard
fun <S> SenderScope<S>.longParameter(id: TypedIdentifier<Long>, min: Long = Long.MIN_VALUE, max: Long = Long.MAX_VALUE, description: String = ""): StructureElement<S, LongParameter<S>>
fun <S> SenderScope<S>.longParameter(name: String, min: Long = Long.MIN_VALUE, max: Long = Long.MAX_VALUE, description: String = ""): StructureElement<S, LongParameter<S>>
Link copied to clipboard
fun <S, T : Any> SenderScope<S>.optionally(default: T, parameter: StructureElement<S, Parameter<S, T>>): StructureElement<S, SignatureConstraint.Terminating<S, T>>
fun <S, T : Any> SenderScope<S>.optionally(validatedDefault: ValidatedDefault<S, T>, parameter: StructureElement<S, Parameter<S, T>>): StructureElement<S, SignatureConstraint.Terminating<S, T>>
Link copied to clipboard
fun <S, T : Any> SenderScope<S>.require(requirement: Requirement<S>, parameter: StructureElement<S, StructureElement<S, Parameter<S, T>>>): StructureElement<S, ValidatedParameter<S, T>>
fun <S> SenderScope<S>.require(requirement: Requirement<S> = requirement { SenderValidationResult.success() }, command: StructureElement<S, StructureElement<S, Structure<S>>>): StructureElement<S, Structure<S>>
fun <S, T : Any> SenderScope<S>.require(invalidDefault: T, requirement: Requirement<S> = requirement { SenderValidationResult.success() }, flag: StructureElement<S, StructureElement<S, Flag<S, T>>>): StructureElement<S, Flag<S, T>>
fun <S, T : Any> SenderScope<S>.require(invalidDefault: ContextualValue<S, T>, requirement: Requirement<S> = requirement { SenderValidationResult.success() }, flag: StructureElement<S, StructureElement<S, Flag<S, T>>>): StructureElement<S, Flag<S, T>>
Link copied to clipboard
fun <S, S2, T : Any> SenderScope<S>.requireAs(transform: (S) -> S2, requirement: Requirement<S> = requirement { SenderValidationResult.success() }, parameter: StructureElement<S2, StructureElement<S2, Parameter<S2, T>>>): StructureElement<S, ValidatedParameter<S, T>>
fun <S, S2> SenderScope<S>.requireAs(transform: (S) -> S2, requirement: Requirement<S> = requirement { SenderValidationResult.success() }, command: StructureElement<S2, StructureElement<S2, Structure<S2>>>): StructureElement<S, Structure<S>>
fun <S, S2, T : Any> SenderScope<S>.requireAs(transform: (S) -> S2, invalidDefault: ContextualValue<S, T>, requirement: Requirement<S> = requirement { SenderValidationResult.success() }, flag: StructureElement<S2, StructureElement<S2, Flag<S2, T>>>): StructureElement<S, Flag<S, T>>
Link copied to clipboard
inline fun <S : Any, S2 : S, T : Any> SenderScope<S>.requireIs(senderType: KClass<S2>, requirement: Requirement<S> = requirement { SenderValidationResult.success() }, noinline parameter: StructureElement<S2, StructureElement<S2, Parameter<S2, T>>>): StructureElement<S, ValidatedParameter<S, T>>
inline fun <S : Any, S2 : S> SenderScope<S>.requireIs(senderType: KClass<S2>, requirement: Requirement<S> = requirement { SenderValidationResult.success() }, noinline command: StructureElement<S2, StructureElement<S2, Structure<S2>>>): StructureElement<S, Structure<S>>
inline fun <S : Any, S2 : S, T : Any> SenderScope<S>.requireIs(senderType: KClass<S2>, invalidDefault: T, requirement: Requirement<S> = requirement { SenderValidationResult.success() }, noinline flag: StructureElement<S2, StructureElement<S2, Flag<S2, T>>>): StructureElement<S, Flag<S, T>>
inline fun <S : Any, S2 : S, T : Any> SenderScope<S>.requireIs(senderType: KClass<S2>, noinline invalidDefault: ContextualValue<S, T>, requirement: Requirement<S> = requirement { SenderValidationResult.success() }, noinline flag: StructureElement<S2, StructureElement<S2, Flag<S2, T>>>): StructureElement<S, Flag<S, T>>
Link copied to clipboard
fun <S> SenderScope<S>.requirement(failureResult: Result<Unit> = SenderValidationResult.failSender(), validate: (S) -> Boolean): Requirement<S>
Link copied to clipboard
fun <S> SenderScope<S>.shortParameter(id: TypedIdentifier<Short>, min: Short = Short.MIN_VALUE, max: Short = Short.MAX_VALUE, description: String = ""): StructureElement<S, ShortParameter<S>>
fun <S> SenderScope<S>.shortParameter(name: String, min: Short = Short.MIN_VALUE, max: Short = Short.MAX_VALUE, description: String = ""): StructureElement<S, ShortParameter<S>>
Link copied to clipboard
fun <S> SenderScope<S>.stringParameter(id: TypedIdentifier<String>, description: String = ""): StructureElement<S, StringParameter<S>>
fun <S> SenderScope<S>.stringParameter(name: String, description: String = ""): StructureElement<S, StringParameter<S>>
Link copied to clipboard
fun <S> SenderScope<S>.unboundedStringParameter(id: TypedIdentifier<String>, description: String = ""): StructureElement<S, UnboundedStringParameter<S>>
fun <S> SenderScope<S>.unboundedStringParameter(name: String, description: String = ""): StructureElement<S, UnboundedStringParameter<S>>
Link copied to clipboard
fun <S> SenderScope<S>.uuidParameter(id: TypedIdentifier<UUID>, description: String = ""): StructureElement<S, UUIDParameter<S>>
fun <S> SenderScope<S>.uuidParameter(name: String, description: String = ""): StructureElement<S, UUIDParameter<S>>
Link copied to clipboard
fun <S, T : Any> SenderScope<S>.valueFlag(id: TypedIdentifier<T>, default: T, parameter: StructureElement<S, Parameter.FixedSize<S, T>>, aliases: Set<String> = setOf(), description: String = ""): StructureElement<S, Flag<S, T>>
fun <S, T : Any> SenderScope<S>.valueFlag(id: TypedIdentifier<T>, default: ContextualValue<S, T>, parameter: StructureElement<S, Parameter.FixedSize<S, T>>, aliases: Set<String> = setOf(), description: String = ""): StructureElement<S, Flag<S, T>>
inline fun <S, T : Any> SenderScope<S>.valueFlag(name: String, default: T, noinline parameter: StructureElement<S, Parameter.FixedSize<S, T>>, aliases: Set<String> = setOf(), description: String = ""): StructureElement<S, Flag<S, T>>
inline fun <S, T : Any> SenderScope<S>.valueFlag(name: String, noinline default: ContextualValue<S, T>, noinline parameter: StructureElement<S, Parameter.FixedSize<S, T>>, aliases: Set<String> = setOf(), description: String = ""): StructureElement<S, Flag<S, T>>