Package-level declarations

Types

Link copied to clipboard
sealed interface AllOf

Marker hierarchy for fixed-arity product types.

Link copied to clipboard
interface AllOf0 : AllOf

Product type with no items.

Link copied to clipboard
interface AllOf1<T1> : AllOf

Product type with one typed slot.

Link copied to clipboard
interface AllOf10<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10> : AllOf

Product type with ten typed slots.

Link copied to clipboard
interface AllOf2<T1, T2> : AllOf

Product type with two typed slots.

Link copied to clipboard
interface AllOf3<T1, T2, T3> : AllOf

Product type with three typed slots.

Link copied to clipboard
interface AllOf4<T1, T2, T3, T4> : AllOf

Product type with four typed slots.

Link copied to clipboard
interface AllOf5<T1, T2, T3, T4, T5> : AllOf

Product type with five typed slots.

Link copied to clipboard
interface AllOf6<T1, T2, T3, T4, T5, T6> : AllOf

Product type with six typed slots.

Link copied to clipboard
interface AllOf7<T1, T2, T3, T4, T5, T6, T7> : AllOf

Product type with seven typed slots.

Link copied to clipboard
interface AllOf8<T1, T2, T3, T4, T5, T6, T7, T8> : AllOf

Product type with eight typed slots.

Link copied to clipboard
interface AllOf9<T1, T2, T3, T4, T5, T6, T7, T8, T9> : AllOf

Product type with nine typed slots.

Link copied to clipboard
interface API

Entry point for declaring endpoint sets with Tapik's DSL.

Link copied to clipboard
sealed interface Body<T : Any>

Describes how an endpoint body is represented on the wire.

Link copied to clipboard
data object EmptyBody : Body<Unit>

Body definition for requests or responses that must not carry content.

Link copied to clipboard
sealed interface Header<H : Any>

Describes one HTTP header slot in an endpoint contract.

Link copied to clipboard
data class HeaderInput<H : Any>(val name: String, val codec: StringCodec<H>) : Header<H>

Header definition whose value must be supplied dynamically.

Link copied to clipboard
typealias Headers = Tuple<Header<*>>

Fixed-arity tuple of header definitions.

Link copied to clipboard
typealias Headers0 = Tuple0

Header tuple with no entries.

Link copied to clipboard
typealias Headers1<H1> = Tuple1<Header<*>, Header<H1>>

Header tuple with one entry.

Link copied to clipboard

Header tuple with ten entries.

Link copied to clipboard
typealias Headers2<H1, H2> = Tuple2<Header<*>, Header<H1>, Header<H2>>

Header tuple with two entries.

Link copied to clipboard
typealias Headers3<H1, H2, H3> = Tuple3<Header<*>, Header<H1>, Header<H2>, Header<H3>>

Header tuple with three entries.

Link copied to clipboard
typealias Headers4<H1, H2, H3, H4> = Tuple4<Header<*>, Header<H1>, Header<H2>, Header<H3>, Header<H4>>

Header tuple with four entries.

Link copied to clipboard
typealias Headers5<H1, H2, H3, H4, H5> = Tuple5<Header<*>, Header<H1>, Header<H2>, Header<H3>, Header<H4>, Header<H5>>

Header tuple with five entries.

Link copied to clipboard
typealias Headers6<H1, H2, H3, H4, H5, H6> = Tuple6<Header<*>, Header<H1>, Header<H2>, Header<H3>, Header<H4>, Header<H5>, Header<H6>>

Header tuple with six entries.

Link copied to clipboard
typealias Headers7<H1, H2, H3, H4, H5, H6, H7> = Tuple7<Header<*>, Header<H1>, Header<H2>, Header<H3>, Header<H4>, Header<H5>, Header<H6>, Header<H7>>

Header tuple with seven entries.

Link copied to clipboard

Header tuple with eight entries.

Link copied to clipboard

Header tuple with nine entries.

Link copied to clipboard
data class HeaderValues<H : Any>(val name: String, val codec: StringCodec<H>, val values: List<H>) : Header<H>

Header definition whose wire values are already fixed.

Link copied to clipboard
typealias HeaderValues0 = Tuple0

Tuple of fixed header values with no entries.

Link copied to clipboard

Tuple of fixed header values with one entry.

Link copied to clipboard
Link copied to clipboard

Tuple of fixed header values with two entries.

Link copied to clipboard

Tuple of fixed header values with three entries.

Link copied to clipboard

Tuple of fixed header values with four entries.

Link copied to clipboard

Tuple of fixed header values with five entries.

Link copied to clipboard

Tuple of fixed header values with six entries.

Link copied to clipboard

Tuple of fixed header values with seven entries.

Link copied to clipboard

Tuple of fixed header values with eight entries.

Link copied to clipboard

Tuple of fixed header values with nine entries.

Link copied to clipboard
data class HttpEndpoint<out P : Parameters, out I : Input<*, *>, out O : Outputs>

Immutable endpoint contract produced by the DSL.

Link copied to clipboard
data class HttpEndpointBuildingContext<P : Parameters, I : Input<*, *>, O : Outputs>(id: String, description: String?, details: String?, method: Method, path: List<String>, parameters: P, input: I, outputs: O)

Staged endpoint builder state.

Link copied to clipboard

First stage of the endpoint DSL, exposed before a method has been chosen.

Link copied to clipboard

String codecs for HTTP-specific scalar types used by Tapik's core models.

Link copied to clipboard
data class Input<H : Headers, B : Body<*>>(val headers: H, val body: B)

Request contract for an endpoint.

Link copied to clipboard
data class JsonBody<T : Any>(val codec: ByteArrayCodec<T>, val name: String) : Body<T>

Structured body advertised as JSON.

Link copied to clipboard
interface Listable<out T>

Common contract for fixed-arity structures that also need an iterable view.

Link copied to clipboard
sealed class MediaType(val major: String, val minor: String)

HTTP media type value used by body definitions and header codecs.

Link copied to clipboard
enum Method : Enum<Method>

HTTP methods exposed by Tapik's endpoint DSL.

Link copied to clipboard
data class Output<H : Headers, B : Body<*>>(val statusMatcher: StatusMatcher, val headers: H, val body: B)

Associates a StatusMatcher with an output Body definition and optional response headers.

Link copied to clipboard
typealias Outputs = Tuple<Output<*, *>>

Fixed-arity tuple of response variants.

Link copied to clipboard
typealias Outputs0 = Tuple0

Output tuple with no declared response variants yet.

Link copied to clipboard
typealias Outputs1<O1> = Tuple1<Output<*, *>, O1>

Output tuple with one response variant.

Link copied to clipboard
typealias Outputs10<O1, O2, O3, O4, O5, O6, O7, O8, O9, O10> = Tuple10<Output<*, *>, O1, O2, O3, O4, O5, O6, O7, O8, O9, O10>

Output tuple with ten response variants.

Link copied to clipboard
typealias Outputs2<O1, O2> = Tuple2<Output<*, *>, O1, O2>

Output tuple with two response variants.

Link copied to clipboard
typealias Outputs3<O1, O2, O3> = Tuple3<Output<*, *>, O1, O2, O3>

Output tuple with three response variants.

Link copied to clipboard
typealias Outputs4<O1, O2, O3, O4> = Tuple4<Output<*, *>, O1, O2, O3, O4>

Output tuple with four response variants.

Link copied to clipboard
typealias Outputs5<O1, O2, O3, O4, O5> = Tuple5<Output<*, *>, O1, O2, O3, O4, O5>

Output tuple with five response variants.

Link copied to clipboard
typealias Outputs6<O1, O2, O3, O4, O5, O6> = Tuple6<Output<*, *>, O1, O2, O3, O4, O5, O6>

Output tuple with six response variants.

Link copied to clipboard
typealias Outputs7<O1, O2, O3, O4, O5, O6, O7> = Tuple7<Output<*, *>, O1, O2, O3, O4, O5, O6, O7>

Output tuple with seven response variants.

Link copied to clipboard
typealias Outputs8<O1, O2, O3, O4, O5, O6, O7, O8> = Tuple8<Output<*, *>, O1, O2, O3, O4, O5, O6, O7, O8>

Output tuple with eight response variants.

Link copied to clipboard
typealias Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, O9> = Tuple9<Output<*, *>, O1, O2, O3, O4, O5, O6, O7, O8, O9>

Output tuple with nine response variants.

Link copied to clipboard
sealed interface Parameter<T : Any>

Describes a typed value that participates in URI construction.

Link copied to clipboard

Whether a parameter is rendered into the path template or the query string.

Link copied to clipboard
typealias Parameters = Tuple<Parameter<*>>

Fixed-arity tuple of URI parameters.

Link copied to clipboard
typealias Parameters0 = Tuple0

Parameter tuple with no captured parameters.

Link copied to clipboard

Parameter tuple with one captured parameter.

Link copied to clipboard

Parameter tuple with ten captured parameters.

Link copied to clipboard

Parameter tuple with two captured parameters.

Link copied to clipboard

Parameter tuple with three captured parameters.

Link copied to clipboard

Parameter tuple with four captured parameters.

Link copied to clipboard

Parameter tuple with five captured parameters.

Link copied to clipboard

Parameter tuple with six captured parameters.

Link copied to clipboard

Parameter tuple with seven captured parameters.

Link copied to clipboard

Parameter tuple with eight captured parameters.

Link copied to clipboard

Parameter tuple with nine captured parameters.

Link copied to clipboard
data class PathVariable<P : Any>(val name: String, val codec: StringCodec<P>) : Parameter<P>

Required parameter rendered as a {name} segment inside the path template.

Link copied to clipboard
data class QueryParameter<Q : Any>(val name: String, val codec: StringCodec<Q>, val default: Option<Q?>) : Parameter<Q>

Query-string parameter that may be required or optional.

Link copied to clipboard
data class RawBody(val mediaType: MediaType?, val codec: ByteArrayCodec<ByteArray>, val name: String) : Body<ByteArray>

Opaque binary body whose meaning is defined entirely by the supplied codec and media type.

Link copied to clipboard
enum Status : Enum<Status>

Known HTTP status codes exposed as named constants.

Link copied to clipboard
sealed interface StatusMatcher : Function1<Status, Boolean>

Strategy used to decide which output variant matches a response status.

Link copied to clipboard
data class StringBody(val codec: ByteArrayCodec<String>, val name: String) : Body<String>

Text body encoded through a string-aware byte codec.

Link copied to clipboard
interface TapikResponse

Marker interface implemented by generated endpoint response hierarchies.

Link copied to clipboard
sealed interface Tuple<out Super> : Listable<Super>

Typed, fixed-arity tuple used throughout the DSL.

Link copied to clipboard
data object Tuple0 : Tuple<Nothing> , AllOf0

Fixed-arity tuple with no elements.

Link copied to clipboard
data class Tuple1<Super, T1 : Super> : Tuple<Super> , AllOf1<T1>

Fixed-arity tuple with one typed element.

Link copied to clipboard
data class Tuple10<Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super, T6 : Super, T7 : Super, T8 : Super, T9 : Super, T10 : Super> : Tuple<Super> , AllOf10<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>

Fixed-arity tuple with ten typed elements.

Link copied to clipboard
data class Tuple2<Super, T1 : Super, T2 : Super> : Tuple<Super> , AllOf2<T1, T2>

Fixed-arity tuple with two typed elements.

Link copied to clipboard
data class Tuple3<Super, T1 : Super, T2 : Super, T3 : Super> : Tuple<Super> , AllOf3<T1, T2, T3>

Fixed-arity tuple with three typed elements.

Link copied to clipboard
data class Tuple4<Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super> : Tuple<Super> , AllOf4<T1, T2, T3, T4>

Fixed-arity tuple with four typed elements.

Link copied to clipboard
data class Tuple5<Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super> : Tuple<Super> , AllOf5<T1, T2, T3, T4, T5>

Fixed-arity tuple with five typed elements.

Link copied to clipboard
data class Tuple6<Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super, T6 : Super> : Tuple<Super> , AllOf6<T1, T2, T3, T4, T5, T6>

Fixed-arity tuple with six typed elements.

Link copied to clipboard
data class Tuple7<Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super, T6 : Super, T7 : Super> : Tuple<Super> , AllOf7<T1, T2, T3, T4, T5, T6, T7>

Fixed-arity tuple with seven typed elements.

Link copied to clipboard
data class Tuple8<Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super, T6 : Super, T7 : Super, T8 : Super> : Tuple<Super> , AllOf8<T1, T2, T3, T4, T5, T6, T7, T8>

Fixed-arity tuple with eight typed elements.

Link copied to clipboard
data class Tuple9<Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super, T6 : Super, T7 : Super, T8 : Super, T9 : Super> : Tuple<Super> , AllOf9<T1, T2, T3, T4, T5, T6, T7, T8, T9>

Fixed-arity tuple with nine typed elements.

Link copied to clipboard

URI template paired with the typed parameters it captures.

Link copied to clipboard

URI template with no captured parameters.

Link copied to clipboard

URI template with one captured parameter.

Link copied to clipboard

URI template with ten captured parameters.

Link copied to clipboard

URI template with two captured parameters.

Link copied to clipboard

URI template with three captured parameters.

Link copied to clipboard

URI template with four captured parameters.

Link copied to clipboard

URI template with five captured parameters.

Link copied to clipboard

URI template with six captured parameters.

Link copied to clipboard

URI template with seven captured parameters.

Link copied to clipboard

URI template with eight captured parameters.

Link copied to clipboard

URI template with nine captured parameters.

Properties

Link copied to clipboard

Shortcut to Tapik's predefined Header factory methods and standard header definitions.

Link copied to clipboard

Shortcut to the predefined PathVariable factory methods such as PathVariable.Companion.long.

Link copied to clipboard

Shortcut to the predefined QueryParameter factory methods such as QueryParameter.Companion.int.

Link copied to clipboard

Status matcher that never succeeds, typically used as a sentinel or placeholder.

Functions

Link copied to clipboard
fun anyStatus(first: Status, vararg rest: Status): StatusMatcher

Matches any of the supplied statuses.

Link copied to clipboard

Appends another literal path segment without changing the captured parameter tuple.

@JvmName(name = "uriWithParameters0DivVariable")
operator fun <P1 : Any> URIWithParameters0.div(variable: PathVariable<P1>): URIWithParameters1<P1>
@JvmName(name = "uriWithParameters1DivVariable")
operator fun <P1 : Any, P2 : Any> URIWithParameters1<P1>.div(variable: PathVariable<P2>): URIWithParameters2<P1, P2>
@JvmName(name = "uriWithParameters2DivVariable")
operator fun <P1 : Any, P2 : Any, P3 : Any> URIWithParameters2<P1, P2>.div(variable: PathVariable<P3>): URIWithParameters3<P1, P2, P3>
@JvmName(name = "uriWithParameters3DivVariable")
operator fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any> URIWithParameters3<P1, P2, P3>.div(variable: PathVariable<P4>): URIWithParameters4<P1, P2, P3, P4>
@JvmName(name = "uriWithParameters4DivVariable")
operator fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any> URIWithParameters4<P1, P2, P3, P4>.div(variable: PathVariable<P5>): URIWithParameters5<P1, P2, P3, P4, P5>
@JvmName(name = "uriWithParameters5DivVariable")
operator fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any> URIWithParameters5<P1, P2, P3, P4, P5>.div(variable: PathVariable<P6>): URIWithParameters6<P1, P2, P3, P4, P5, P6>
@JvmName(name = "uriWithParameters6DivVariable")
operator fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any, P7 : Any> URIWithParameters6<P1, P2, P3, P4, P5, P6>.div(variable: PathVariable<P7>): URIWithParameters7<P1, P2, P3, P4, P5, P6, P7>
@JvmName(name = "uriWithParameters7DivVariable")
operator fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any, P7 : Any, P8 : Any> URIWithParameters7<P1, P2, P3, P4, P5, P6, P7>.div(variable: PathVariable<P8>): URIWithParameters8<P1, P2, P3, P4, P5, P6, P7, P8>
@JvmName(name = "uriWithParameters8DivVariable")
operator fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any, P7 : Any, P8 : Any, P9 : Any> URIWithParameters8<P1, P2, P3, P4, P5, P6, P7, P8>.div(variable: PathVariable<P9>): URIWithParameters9<P1, P2, P3, P4, P5, P6, P7, P8, P9>
@JvmName(name = "uriWithParameters9DivVariable")
operator fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any, P7 : Any, P8 : Any, P9 : Any, P10 : Any> URIWithParameters9<P1, P2, P3, P4, P5, P6, P7, P8, P9>.div(variable: PathVariable<P10>): URIWithParameters10<P1, P2, P3, P4, P5, P6, P7, P8, P9, P10>

Appends one more path placeholder to the template.

operator fun <P : Any> String.div(variable: PathVariable<P>): URIWithParameters1<P>

Starts a URI template with a literal segment followed by a path placeholder.

operator fun String.div(segment: String): URIWithParameters0

Starts a URI template from two literal path segments.

Link copied to clipboard

Returns the singleton body definition used when no payload is allowed.

Link copied to clipboard

Returns the empty header tuple.

Link copied to clipboard

Returns the empty tuple of fixed header values.

Link copied to clipboard

Returns the empty output tuple used before any response variants are declared.

Link copied to clipboard

Returns the empty parameter tuple used by routes with no path or query inputs.

Link copied to clipboard

Returns the empty tuple singleton.

Link copied to clipboard
inline fun <H : Any> header(name: String, codec: StringCodec<H>): Header<H>

Defines a required header slot.

Link copied to clipboard
fun <H1 : Any> headersOf(header1: Header<H1>): Headers1<H1>

Creates a header tuple with one definition.

fun <H1 : Any, H2 : Any> headersOf(header1: Header<H1>, header2: Header<H2>): Headers2<H1, H2>

Creates a header tuple with two definitions.

fun <H1 : Any, H2 : Any, H3 : Any> headersOf(header1: Header<H1>, header2: Header<H2>, header3: Header<H3>): Headers3<H1, H2, H3>

Creates a header tuple with three definitions.

fun <H1 : Any, H2 : Any, H3 : Any, H4 : Any> headersOf(header1: Header<H1>, header2: Header<H2>, header3: Header<H3>, header4: Header<H4>): Headers4<H1, H2, H3, H4>

Creates a header tuple with four definitions.

fun <H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any> headersOf(header1: Header<H1>, header2: Header<H2>, header3: Header<H3>, header4: Header<H4>, header5: Header<H5>): Headers5<H1, H2, H3, H4, H5>

Creates a header tuple with five definitions.

fun <H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any> headersOf(header1: Header<H1>, header2: Header<H2>, header3: Header<H3>, header4: Header<H4>, header5: Header<H5>, header6: Header<H6>): Headers6<H1, H2, H3, H4, H5, H6>

Creates a header tuple with six definitions.

fun <H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any> headersOf(header1: Header<H1>, header2: Header<H2>, header3: Header<H3>, header4: Header<H4>, header5: Header<H5>, header6: Header<H6>, header7: Header<H7>): Headers7<H1, H2, H3, H4, H5, H6, H7>

Creates a header tuple with seven definitions.

fun <H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any> headersOf(header1: Header<H1>, header2: Header<H2>, header3: Header<H3>, header4: Header<H4>, header5: Header<H5>, header6: Header<H6>, header7: Header<H7>, header8: Header<H8>): Headers8<H1, H2, H3, H4, H5, H6, H7, H8>

Creates a header tuple with eight definitions.

fun <H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any, H9 : Any> headersOf(header1: Header<H1>, header2: Header<H2>, header3: Header<H3>, header4: Header<H4>, header5: Header<H5>, header6: Header<H6>, header7: Header<H7>, header8: Header<H8>, header9: Header<H9>): Headers9<H1, H2, H3, H4, H5, H6, H7, H8, H9>

Creates a header tuple with nine definitions.

fun <H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any, H9 : Any, H10 : Any> headersOf(header1: Header<H1>, header2: Header<H2>, header3: Header<H3>, header4: Header<H4>, header5: Header<H5>, header6: Header<H6>, header7: Header<H7>, header8: Header<H8>, header9: Header<H9>, header10: Header<H10>): Headers10<H1, H2, H3, H4, H5, H6, H7, H8, H9, H10>

Creates a header tuple with ten definitions.

Link copied to clipboard
fun <H1 : Any> headerValuesOf(headerValues1: HeaderValues<H1>): HeaderValues1<H1>

Creates a tuple containing one fixed header value definition.

fun <H1 : Any, H2 : Any> headerValuesOf(headerValues1: HeaderValues<H1>, headerValues2: HeaderValues<H2>): HeaderValues2<H1, H2>

Creates a tuple containing two fixed header value definitions.

fun <H1 : Any, H2 : Any, H3 : Any> headerValuesOf(headerValues1: HeaderValues<H1>, headerValues2: HeaderValues<H2>, headerValues3: HeaderValues<H3>): HeaderValues3<H1, H2, H3>

Creates a tuple containing three fixed header value definitions.

fun <H1 : Any, H2 : Any, H3 : Any, H4 : Any> headerValuesOf(headerValues1: HeaderValues<H1>, headerValues2: HeaderValues<H2>, headerValues3: HeaderValues<H3>, headerValues4: HeaderValues<H4>): HeaderValues4<H1, H2, H3, H4>

Creates a tuple containing four fixed header value definitions.

fun <H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any> headerValuesOf(headerValues1: HeaderValues<H1>, headerValues2: HeaderValues<H2>, headerValues3: HeaderValues<H3>, headerValues4: HeaderValues<H4>, headerValues5: HeaderValues<H5>): HeaderValues5<H1, H2, H3, H4, H5>

Creates a tuple containing five fixed header value definitions.

fun <H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any> headerValuesOf(headerValues1: HeaderValues<H1>, headerValues2: HeaderValues<H2>, headerValues3: HeaderValues<H3>, headerValues4: HeaderValues<H4>, headerValues5: HeaderValues<H5>, headerValues6: HeaderValues<H6>): HeaderValues6<H1, H2, H3, H4, H5, H6>

Creates a tuple containing six fixed header value definitions.

fun <H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any> headerValuesOf(headerValues1: HeaderValues<H1>, headerValues2: HeaderValues<H2>, headerValues3: HeaderValues<H3>, headerValues4: HeaderValues<H4>, headerValues5: HeaderValues<H5>, headerValues6: HeaderValues<H6>, headerValues7: HeaderValues<H7>): HeaderValues7<H1, H2, H3, H4, H5, H6, H7>

Creates a tuple containing seven fixed header value definitions.

fun <H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any> headerValuesOf(headerValues1: HeaderValues<H1>, headerValues2: HeaderValues<H2>, headerValues3: HeaderValues<H3>, headerValues4: HeaderValues<H4>, headerValues5: HeaderValues<H5>, headerValues6: HeaderValues<H6>, headerValues7: HeaderValues<H7>, headerValues8: HeaderValues<H8>): HeaderValues8<H1, H2, H3, H4, H5, H6, H7, H8>

Creates a tuple containing eight fixed header value definitions.

fun <H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any, H9 : Any> headerValuesOf(headerValues1: HeaderValues<H1>, headerValues2: HeaderValues<H2>, headerValues3: HeaderValues<H3>, headerValues4: HeaderValues<H4>, headerValues5: HeaderValues<H5>, headerValues6: HeaderValues<H6>, headerValues7: HeaderValues<H7>, headerValues8: HeaderValues<H8>, headerValues9: HeaderValues<H9>): HeaderValues9<H1, H2, H3, H4, H5, H6, H7, H8, H9>

Creates a tuple containing nine fixed header value definitions.

fun <H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any, H9 : Any, H10 : Any> headerValuesOf(headerValues1: HeaderValues<H1>, headerValues2: HeaderValues<H2>, headerValues3: HeaderValues<H3>, headerValues4: HeaderValues<H4>, headerValues5: HeaderValues<H5>, headerValues6: HeaderValues<H6>, headerValues7: HeaderValues<H7>, headerValues8: HeaderValues<H8>, headerValues9: HeaderValues<H9>, headerValues10: HeaderValues<H10>): HeaderValues10<H1, H2, H3, H4, H5, H6, H7, H8, H9, H10>

Creates a tuple containing ten fixed header value definitions.

Link copied to clipboard

Adds a single request header definition while keeping the empty body.

Replaces the request body while keeping the existing empty header tuple.

Adds two request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody1")
fun <P : Parameters, O : Outputs, H1 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers1<H1>, B>, O>

Adds a single header definition and replaces the body.

Adds three request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody2")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers2<H1, H2>, B>, O>

Adds two header definitions and replaces the body.

Adds four request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody3")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers3<H1, H2, H3>, B>, O>

Adds three header definitions and replaces the body.

Adds five request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody4")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers4<H1, H2, H3, H4>, B>, O>

Adds four header definitions and replaces the body.

@JvmName(name = "inputHeaders6")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>): HttpEndpointBuildingContext<P, Input<Headers6<H1, H2, H3, H4, H5, H6>, EmptyBody>, O>

Adds six request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody5")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers5<H1, H2, H3, H4, H5>, B>, O>

Adds five header definitions and replaces the body.

@JvmName(name = "inputHeaders7")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, h7: Header<H7>): HttpEndpointBuildingContext<P, Input<Headers7<H1, H2, H3, H4, H5, H6, H7>, EmptyBody>, O>

Adds seven request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody6")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers6<H1, H2, H3, H4, H5, H6>, B>, O>

Adds six header definitions and replaces the body.

@JvmName(name = "inputHeaders8")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, h7: Header<H7>, h8: Header<H8>): HttpEndpointBuildingContext<P, Input<Headers8<H1, H2, H3, H4, H5, H6, H7, H8>, EmptyBody>, O>

Adds eight request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody7")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, h7: Header<H7>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers7<H1, H2, H3, H4, H5, H6, H7>, B>, O>

Adds seven header definitions and replaces the body.

@JvmName(name = "inputHeaders9")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any, H9 : Any> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, h7: Header<H7>, h8: Header<H8>, h9: Header<H9>): HttpEndpointBuildingContext<P, Input<Headers9<H1, H2, H3, H4, H5, H6, H7, H8, H9>, EmptyBody>, O>

Adds nine request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody8")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, h7: Header<H7>, h8: Header<H8>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers8<H1, H2, H3, H4, H5, H6, H7, H8>, B>, O>

Adds eight header definitions and replaces the body.

@JvmName(name = "inputHeaders10")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any, H9 : Any, H10 : Any> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, h7: Header<H7>, h8: Header<H8>, h9: Header<H9>, h10: Header<H10>): HttpEndpointBuildingContext<P, Input<Headers10<H1, H2, H3, H4, H5, H6, H7, H8, H9, H10>, EmptyBody>, O>

Adds ten request header definitions while keeping the empty body.

@JvmName(name = "inputHeadersBody9")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any, H9 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, h7: Header<H7>, h8: Header<H8>, h9: Header<H9>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers9<H1, H2, H3, H4, H5, H6, H7, H8, H9>, B>, O>

Adds nine header definitions and replaces the body.

@JvmName(name = "inputHeadersBody10")
fun <P : Parameters, O : Outputs, H1 : Any, H2 : Any, H3 : Any, H4 : Any, H5 : Any, H6 : Any, H7 : Any, H8 : Any, H9 : Any, H10 : Any, B : Body<*>> HttpEndpointBuildingContext<P, Input<Headers0, EmptyBody>, O>.input(h1: Header<H1>, h2: Header<H2>, h3: Header<H3>, h4: Header<H4>, h5: Header<H5>, h6: Header<H6>, h7: Header<H7>, h8: Header<H8>, h9: Header<H9>, h10: Header<H10>, body: () -> B): HttpEndpointBuildingContext<P, Input<Headers10<H1, H2, H3, H4, H5, H6, H7, H8, H9, H10>, B>, O>

Adds ten header definitions and replaces the body.

Link copied to clipboard
fun matchStatus(description: String, predicate: (Status) -> Boolean): StatusMatcher

Builds a custom status matcher described by description.

Link copied to clipboard
@JvmName(name = "outputWithStatus0")
fun <P : Parameters, I : Input<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs0>.output(status: Status = Status.Ok, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs1<Output<Headers0, B>>>

Adds a new output that is selected when the response status equals status.

@JvmName(name = "outputMatcher0")
fun <P : Parameters, I : Input<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs0>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs1<Output<Headers0, B>>>

Adds a new output that is selected when statusMatcher accepts the response and uses body.

@JvmName(name = "outputWithStatus1")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs1<O1>>.output(status: Status = Status.Ok, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs2<O1, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving the existing output O1.

@JvmName(name = "outputMatcher1")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs1<O1>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs2<O1, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving the existing output O1.

@JvmName(name = "outputWithStatus2")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs2<O1, O2>>.output(status: Status = Status.Ok, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs3<O1, O2, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving O1 and O2.

@JvmName(name = "outputMatcher2")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs2<O1, O2>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs3<O1, O2, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving O1 and O2.

@JvmName(name = "outputWithStatus3")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs3<O1, O2, O3>>.output(status: Status = Status.Ok, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs4<O1, O2, O3, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving O1, O2, and O3.

@JvmName(name = "outputMatcher3")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs3<O1, O2, O3>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs4<O1, O2, O3, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving O1, O2, and O3.

@JvmName(name = "outputWithStatus4")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs4<O1, O2, O3, O4>>.output(status: Status = Status.Ok, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs5<O1, O2, O3, O4, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving O1, O2, O3, and O4.

@JvmName(name = "outputMatcher4")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs4<O1, O2, O3, O4>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs5<O1, O2, O3, O4, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving O1, O2, O3, and O4.

@JvmName(name = "outputWithStatus5")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs5<O1, O2, O3, O4, O5>>.output(status: Status = Status.Ok, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs6<O1, O2, O3, O4, O5, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving O1, O2, O3, O4, and O5.

@JvmName(name = "outputMatcher5")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs5<O1, O2, O3, O4, O5>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs6<O1, O2, O3, O4, O5, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving O1, O2, O3, O4, and O5.

@JvmName(name = "outputWithStatus6")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs6<O1, O2, O3, O4, O5, O6>>.output(status: Status = Status.Ok, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs7<O1, O2, O3, O4, O5, O6, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving O1, O2, O3, O4, O5, and O6.

@JvmName(name = "outputMatcher6")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs6<O1, O2, O3, O4, O5, O6>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs7<O1, O2, O3, O4, O5, O6, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving O1, O2, O3, O4, O5, and O6.

@JvmName(name = "outputWithStatus7")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs7<O1, O2, O3, O4, O5, O6, O7>>.output(status: Status = Status.Ok, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving O1, O2, O3, O4, O5, O6, and O7.

@JvmName(name = "outputMatcher7")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs7<O1, O2, O3, O4, O5, O6, O7>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving O1, O2, O3, O4, O5, O6, and O7.

@JvmName(name = "outputWithStatus8")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, O8>>.output(status: Status = Status.Ok, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving O1, O2, O3, O4, O5, O6, O7, and O8.

@JvmName(name = "outputMatcher8")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, O8>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving O1, O2, O3, O4, O5, O6, O7, and O8.

@JvmName(name = "outputWithStatus9")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, O9 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, O9>>.output(status: Status = Status.Ok, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs10<O1, O2, O3, O4, O5, O6, O7, O8, O9, Output<Headers0, B>>>

Appends a new output matched by status and using body while preserving O1, O2, O3, O4, O5, O6, O7, O8, and O9.

@JvmName(name = "outputMatcher9")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, O9 : Output<*, *>, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, O9>>.output(statusMatcher: StatusMatcher, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs10<O1, O2, O3, O4, O5, O6, O7, O8, O9, Output<Headers0, B>>>

Appends a new output matched by statusMatcher and using body while preserving O1, O2, O3, O4, O5, O6, O7, O8, and O9.

@JvmName(name = "outputWithStatusHeaders0")
fun <P : Parameters, I : Input<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs0>.output(status: Status = Status.Ok, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs1<Output<H, B>>>

Adds a new output that uses status together with headers and body.

@JvmName(name = "outputMatcherHeaders0")
fun <P : Parameters, I : Input<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs0>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs1<Output<H, B>>>

Adds a new output that is selected when statusMatcher accepts the response and uses headers and body.

@JvmName(name = "outputWithStatusHeaders1")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs1<O1>>.output(status: Status = Status.Ok, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs2<O1, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving the existing output O1.

@JvmName(name = "outputMatcherHeaders1")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs1<O1>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs2<O1, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving the existing output O1.

@JvmName(name = "outputWithStatusHeaders2")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs2<O1, O2>>.output(status: Status = Status.Ok, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs3<O1, O2, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving O1 and O2.

@JvmName(name = "outputMatcherHeaders2")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs2<O1, O2>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs3<O1, O2, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving O1 and O2.

@JvmName(name = "outputWithStatusHeaders3")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs3<O1, O2, O3>>.output(status: Status = Status.Ok, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs4<O1, O2, O3, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving O1, O2, and O3.

@JvmName(name = "outputMatcherHeaders3")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs3<O1, O2, O3>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs4<O1, O2, O3, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving O1, O2, and O3.

@JvmName(name = "outputWithStatusHeaders4")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs4<O1, O2, O3, O4>>.output(status: Status = Status.Ok, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs5<O1, O2, O3, O4, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving O1, O2, O3, and O4.

@JvmName(name = "outputMatcherHeaders4")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs4<O1, O2, O3, O4>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs5<O1, O2, O3, O4, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving O1, O2, O3, and O4.

@JvmName(name = "outputWithStatusHeaders5")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs5<O1, O2, O3, O4, O5>>.output(status: Status = Status.Ok, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs6<O1, O2, O3, O4, O5, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving O1, O2, O3, O4, and O5.

@JvmName(name = "outputMatcherHeaders5")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs5<O1, O2, O3, O4, O5>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs6<O1, O2, O3, O4, O5, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving O1, O2, O3, O4, and O5.

@JvmName(name = "outputWithStatusHeaders6")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs6<O1, O2, O3, O4, O5, O6>>.output(status: Status = Status.Ok, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs7<O1, O2, O3, O4, O5, O6, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving O1, O2, O3, O4, O5, and O6.

@JvmName(name = "outputMatcherHeaders6")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs6<O1, O2, O3, O4, O5, O6>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs7<O1, O2, O3, O4, O5, O6, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving O1, O2, O3, O4, O5, and O6.

@JvmName(name = "outputWithStatusHeaders7")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs7<O1, O2, O3, O4, O5, O6, O7>>.output(status: Status = Status.Ok, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving O1, O2, O3, O4, O5, O6, and O7.

@JvmName(name = "outputMatcherHeaders7")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs7<O1, O2, O3, O4, O5, O6, O7>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving O1, O2, O3, O4, O5, O6, and O7.

@JvmName(name = "outputWithStatusHeaders8")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, O8>>.output(status: Status = Status.Ok, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving O1, O2, O3, O4, O5, O6, O7, and O8.

@JvmName(name = "outputMatcherHeaders8")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs8<O1, O2, O3, O4, O5, O6, O7, O8>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving O1, O2, O3, O4, O5, O6, O7, and O8.

@JvmName(name = "outputWithStatusHeaders9")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, O9 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, O9>>.output(status: Status = Status.Ok, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs10<O1, O2, O3, O4, O5, O6, O7, O8, O9, Output<H, B>>>

Appends a new output matched by status using headers and body while preserving O1, O2, O3, O4, O5, O6, O7, O8, and O9.

@JvmName(name = "outputMatcherHeaders9")
fun <P : Parameters, I : Input<*, *>, O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, O9 : Output<*, *>, H : Headers, B : Body<*>> HttpEndpointBuildingContext<P, I, Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, O9>>.output(statusMatcher: StatusMatcher, headers: H, body: () -> B): HttpEndpointBuildingContext<P, I, Outputs10<O1, O2, O3, O4, O5, O6, O7, O8, O9, Output<H, B>>>

Appends a new output matched by statusMatcher using headers and body while preserving O1, O2, O3, O4, O5, O6, O7, O8, and O9.

Link copied to clipboard
fun <O1 : Output<*, *>> outputsOf(output1: O1): Outputs1<O1>

Creates an output tuple with one response variant.

fun <O1 : Output<*, *>, O2 : Output<*, *>> outputsOf(output1: O1, output2: O2): Outputs2<O1, O2>

Creates an output tuple with two response variants.

fun <O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>> outputsOf(output1: O1, output2: O2, output3: O3): Outputs3<O1, O2, O3>

Creates an output tuple with three response variants.

fun <O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>> outputsOf(output1: O1, output2: O2, output3: O3, output4: O4): Outputs4<O1, O2, O3, O4>

Creates an output tuple with four response variants.

fun <O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>> outputsOf(output1: O1, output2: O2, output3: O3, output4: O4, output5: O5): Outputs5<O1, O2, O3, O4, O5>

Creates an output tuple with five response variants.

fun <O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>> outputsOf(output1: O1, output2: O2, output3: O3, output4: O4, output5: O5, output6: O6): Outputs6<O1, O2, O3, O4, O5, O6>

Creates an output tuple with six response variants.

fun <O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>> outputsOf(output1: O1, output2: O2, output3: O3, output4: O4, output5: O5, output6: O6, output7: O7): Outputs7<O1, O2, O3, O4, O5, O6, O7>

Creates an output tuple with seven response variants.

fun <O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>> outputsOf(output1: O1, output2: O2, output3: O3, output4: O4, output5: O5, output6: O6, output7: O7, output8: O8): Outputs8<O1, O2, O3, O4, O5, O6, O7, O8>

Creates an output tuple with eight response variants.

fun <O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, O9 : Output<*, *>> outputsOf(output1: O1, output2: O2, output3: O3, output4: O4, output5: O5, output6: O6, output7: O7, output8: O8, output9: O9): Outputs9<O1, O2, O3, O4, O5, O6, O7, O8, O9>

Creates an output tuple with nine response variants.

fun <O1 : Output<*, *>, O2 : Output<*, *>, O3 : Output<*, *>, O4 : Output<*, *>, O5 : Output<*, *>, O6 : Output<*, *>, O7 : Output<*, *>, O8 : Output<*, *>, O9 : Output<*, *>, O10 : Output<*, *>> outputsOf(output1: O1, output2: O2, output3: O3, output4: O4, output5: O5, output6: O6, output7: O7, output8: O8, output9: O9, output10: O10): Outputs10<O1, O2, O3, O4, O5, O6, O7, O8, O9, O10>

Creates an output tuple with ten response variants.

Link copied to clipboard
fun <P1 : Any> parametersOf(parameter1: Parameter<P1>): Parameters1<P1>

Creates a parameter tuple with one captured parameter.

fun <P1 : Any, P2 : Any> parametersOf(parameter1: Parameter<P1>, parameter2: Parameter<P2>): Parameters2<P1, P2>

Creates a parameter tuple with two captured parameters.

fun <P1 : Any, P2 : Any, P3 : Any> parametersOf(parameter1: Parameter<P1>, parameter2: Parameter<P2>, parameter3: Parameter<P3>): Parameters3<P1, P2, P3>

Creates a parameter tuple with three captured parameters.

fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any> parametersOf(parameter1: Parameter<P1>, parameter2: Parameter<P2>, parameter3: Parameter<P3>, parameter4: Parameter<P4>): Parameters4<P1, P2, P3, P4>

Creates a parameter tuple with four captured parameters.

fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any> parametersOf(parameter1: Parameter<P1>, parameter2: Parameter<P2>, parameter3: Parameter<P3>, parameter4: Parameter<P4>, parameter5: Parameter<P5>): Parameters5<P1, P2, P3, P4, P5>

Creates a parameter tuple with five captured parameters.

fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any> parametersOf(parameter1: Parameter<P1>, parameter2: Parameter<P2>, parameter3: Parameter<P3>, parameter4: Parameter<P4>, parameter5: Parameter<P5>, parameter6: Parameter<P6>): Parameters6<P1, P2, P3, P4, P5, P6>

Creates a parameter tuple with six captured parameters.

fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any, P7 : Any> parametersOf(parameter1: Parameter<P1>, parameter2: Parameter<P2>, parameter3: Parameter<P3>, parameter4: Parameter<P4>, parameter5: Parameter<P5>, parameter6: Parameter<P6>, parameter7: Parameter<P7>): Parameters7<P1, P2, P3, P4, P5, P6, P7>

Creates a parameter tuple with seven captured parameters.

fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any, P7 : Any, P8 : Any> parametersOf(parameter1: Parameter<P1>, parameter2: Parameter<P2>, parameter3: Parameter<P3>, parameter4: Parameter<P4>, parameter5: Parameter<P5>, parameter6: Parameter<P6>, parameter7: Parameter<P7>, parameter8: Parameter<P8>): Parameters8<P1, P2, P3, P4, P5, P6, P7, P8>

Creates a parameter tuple with eight captured parameters.

fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any, P7 : Any, P8 : Any, P9 : Any> parametersOf(parameter1: Parameter<P1>, parameter2: Parameter<P2>, parameter3: Parameter<P3>, parameter4: Parameter<P4>, parameter5: Parameter<P5>, parameter6: Parameter<P6>, parameter7: Parameter<P7>, parameter8: Parameter<P8>, parameter9: Parameter<P9>): Parameters9<P1, P2, P3, P4, P5, P6, P7, P8, P9>

Creates a parameter tuple with nine captured parameters.

fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any, P7 : Any, P8 : Any, P9 : Any, P10 : Any> parametersOf(parameter1: Parameter<P1>, parameter2: Parameter<P2>, parameter3: Parameter<P3>, parameter4: Parameter<P4>, parameter5: Parameter<P5>, parameter6: Parameter<P6>, parameter7: Parameter<P7>, parameter8: Parameter<P8>, parameter9: Parameter<P9>, parameter10: Parameter<P10>): Parameters10<P1, P2, P3, P4, P5, P6, P7, P8, P9, P10>

Creates a parameter tuple with ten captured parameters.

Link copied to clipboard
inline fun <P : Any> path(name: String, codec: StringCodec<P>): PathVariable<P>

Defines a required path placeholder.

Link copied to clipboard
operator fun <Super, T1 : Super> Tuple0.plus(item1: T1): Tuple1<Super, T1>

Appends the first typed element to an empty tuple.

operator fun <Super, T1 : Super, T2 : Super> Tuple1<*, T1>.plus(item2: T2): Tuple2<Super, T1, T2>

Appends another element while preserving the existing tuple slots.

operator fun <Super, T1 : Super, T2 : Super, T3 : Super> Tuple2<*, T1, T2>.plus(item3: T3): Tuple3<Super, T1, T2, T3>

Appends a third typed element to the tuple.

operator fun <Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super> Tuple3<*, T1, T2, T3>.plus(item4: T4): Tuple4<Super, T1, T2, T3, T4>

Appends a fourth typed element to the tuple.

operator fun <Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super> Tuple4<*, T1, T2, T3, T4>.plus(item5: T5): Tuple5<Super, T1, T2, T3, T4, T5>

Appends a fifth typed element to the tuple.

operator fun <Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super, T6 : Super> Tuple5<*, T1, T2, T3, T4, T5>.plus(item6: T6): Tuple6<Super, T1, T2, T3, T4, T5, T6>

Appends a sixth typed element to the tuple.

operator fun <Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super, T6 : Super, T7 : Super> Tuple6<*, T1, T2, T3, T4, T5, T6>.plus(item7: T7): Tuple7<Super, T1, T2, T3, T4, T5, T6, T7>

Appends a seventh typed element to the tuple.

operator fun <Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super, T6 : Super, T7 : Super, T8 : Super> Tuple7<*, T1, T2, T3, T4, T5, T6, T7>.plus(item8: T8): Tuple8<Super, T1, T2, T3, T4, T5, T6, T7, T8>

Appends an eighth typed element to the tuple.

operator fun <Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super, T6 : Super, T7 : Super, T8 : Super, T9 : Super> Tuple8<*, T1, T2, T3, T4, T5, T6, T7, T8>.plus(item9: T9): Tuple9<Super, T1, T2, T3, T4, T5, T6, T7, T8, T9>

Appends a ninth typed element to the tuple.

operator fun <Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super, T6 : Super, T7 : Super, T8 : Super, T9 : Super, T10 : Super> Tuple9<*, T1, T2, T3, T4, T5, T6, T7, T8, T9>.plus(item10: T10): Tuple10<Super, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>

Appends a tenth typed element to the tuple.

@JvmName(name = "uriWithParameters0PlusParameter")
operator fun <P1 : Any> URIWithParameters0.plus(parameter: QueryParameter<P1>): URIWithParameters1<P1>
@JvmName(name = "uriWithParameters1PlusParameter")
operator fun <P1 : Any, P2 : Any> URIWithParameters1<P1>.plus(parameter: QueryParameter<P2>): URIWithParameters2<P1, P2>
@JvmName(name = "uriWithParameters2PlusParameter")
operator fun <P1 : Any, P2 : Any, P3 : Any> URIWithParameters2<P1, P2>.plus(parameter: QueryParameter<P3>): URIWithParameters3<P1, P2, P3>
@JvmName(name = "uriWithParameters3PlusParameter")
operator fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any> URIWithParameters3<P1, P2, P3>.plus(parameter: QueryParameter<P4>): URIWithParameters4<P1, P2, P3, P4>
@JvmName(name = "uriWithParameters4PlusParameter")
operator fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any> URIWithParameters4<P1, P2, P3, P4>.plus(parameter: QueryParameter<P5>): URIWithParameters5<P1, P2, P3, P4, P5>
@JvmName(name = "uriWithParameters5PlusParameter")
operator fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any> URIWithParameters5<P1, P2, P3, P4, P5>.plus(parameter: QueryParameter<P6>): URIWithParameters6<P1, P2, P3, P4, P5, P6>
@JvmName(name = "uriWithParameters6PlusParameter")
operator fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any, P7 : Any> URIWithParameters6<P1, P2, P3, P4, P5, P6>.plus(parameter: QueryParameter<P7>): URIWithParameters7<P1, P2, P3, P4, P5, P6, P7>
@JvmName(name = "uriWithParameters7PlusParameter")
operator fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any, P7 : Any, P8 : Any> URIWithParameters7<P1, P2, P3, P4, P5, P6, P7>.plus(parameter: QueryParameter<P8>): URIWithParameters8<P1, P2, P3, P4, P5, P6, P7, P8>
@JvmName(name = "uriWithParameters8PlusParameter")
operator fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any, P7 : Any, P8 : Any, P9 : Any> URIWithParameters8<P1, P2, P3, P4, P5, P6, P7, P8>.plus(parameter: QueryParameter<P9>): URIWithParameters9<P1, P2, P3, P4, P5, P6, P7, P8, P9>
@JvmName(name = "uriWithParameters9PlusParameter")
operator fun <P1 : Any, P2 : Any, P3 : Any, P4 : Any, P5 : Any, P6 : Any, P7 : Any, P8 : Any, P9 : Any, P10 : Any> URIWithParameters9<P1, P2, P3, P4, P5, P6, P7, P8, P9>.plus(parameter: QueryParameter<P10>): URIWithParameters10<P1, P2, P3, P4, P5, P6, P7, P8, P9, P10>

Appends a query parameter while leaving the literal path unchanged.

Link copied to clipboard
fun <Q : Any> query(name: String, codec: StringCodec<Q>): QueryParameter<Q>

Defines a required query parameter.

fun <Q : Any> query(name: String, codec: StringCodec<Q>, default: Q?): QueryParameter<Q>

Defines an optional query parameter by recording the default to use when callers omit it.

Link copied to clipboard
fun rawBody(name: String = "bytes", mediaType: MediaType? = null): RawBody

Creates a binary body that passes bytes through unchanged.

fun rawBody(codec: ByteArrayCodec<ByteArray>, mediaType: MediaType? = null, name: String = "bytes"): RawBody

Creates a binary body whose wire representation is controlled by codec.

Link copied to clipboard
fun stringBody(name: String = "string"): StringBody

Creates a plain-text body backed by Tapik's default string codec.

fun stringBody(codec: ByteArrayCodec<String>, name: String = "string"): StringBody

Creates a plain-text body that delegates encoding and decoding to codec.

Link copied to clipboard
fun <Super, T1 : Super> tupleOf(item1: T1): Tuple1<Super, T1>

Creates a one-element tuple.

fun <Super, T1 : Super, T2 : Super> tupleOf(item1: T1, item2: T2): Tuple2<Super, T1, T2>

Creates a two-element tuple.

fun <Super, T1 : Super, T2 : Super, T3 : Super> tupleOf(item1: T1, item2: T2, item3: T3): Tuple3<Super, T1, T2, T3>

Creates a three-element tuple.

fun <Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super> tupleOf(item1: T1, item2: T2, item3: T3, item4: T4): Tuple4<Super, T1, T2, T3, T4>

Creates a four-element tuple.

fun <Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super> tupleOf(item1: T1, item2: T2, item3: T3, item4: T4, item5: T5): Tuple5<Super, T1, T2, T3, T4, T5>

Creates a five-element tuple.

fun <Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super, T6 : Super> tupleOf(item1: T1, item2: T2, item3: T3, item4: T4, item5: T5, item6: T6): Tuple6<Super, T1, T2, T3, T4, T5, T6>

Creates a six-element tuple.

fun <Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super, T6 : Super, T7 : Super> tupleOf(item1: T1, item2: T2, item3: T3, item4: T4, item5: T5, item6: T6, item7: T7): Tuple7<Super, T1, T2, T3, T4, T5, T6, T7>

Creates a seven-element tuple.

fun <Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super, T6 : Super, T7 : Super, T8 : Super> tupleOf(item1: T1, item2: T2, item3: T3, item4: T4, item5: T5, item6: T6, item7: T7, item8: T8): Tuple8<Super, T1, T2, T3, T4, T5, T6, T7, T8>

Creates an eight-element tuple.

fun <Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super, T6 : Super, T7 : Super, T8 : Super, T9 : Super> tupleOf(item1: T1, item2: T2, item3: T3, item4: T4, item5: T5, item6: T6, item7: T7, item8: T8, item9: T9): Tuple9<Super, T1, T2, T3, T4, T5, T6, T7, T8, T9>

Creates a nine-element tuple.

fun <Super, T1 : Super, T2 : Super, T3 : Super, T4 : Super, T5 : Super, T6 : Super, T7 : Super, T8 : Super, T9 : Super, T10 : Super> tupleOf(item1: T1, item2: T2, item3: T3, item4: T4, item5: T5, item6: T6, item7: T7, item8: T8, item9: T9, item10: T10): Tuple10<Super, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>

Creates a ten-element tuple.