com.pulumi.gcp.bigquery.kotlin.inputs.RoutineArgumentArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-gcp-kotlin Show documentation
Show all versions of pulumi-gcp-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.gcp.bigquery.kotlin.inputs
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.bigquery.inputs.RoutineArgumentArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
*
* @property argumentKind Defaults to FIXED_TYPE.
* Default value is `FIXED_TYPE`.
* Possible values are: `FIXED_TYPE`, `ANY_TYPE`.
* @property dataType A JSON schema for the data type. Required unless argumentKind = ANY_TYPE.
* ~>**NOTE**: Because this field expects a JSON string, any changes to the string
* will create a diff, even if the JSON itself hasn't changed. If the API returns
* a different value for the same schema, e.g. it switched the order of values
* or replaced STRUCT field type with RECORD field type, we currently cannot
* suppress the recurring diff this causes. As a workaround, we recommend using
* the schema as returned by the API.
* @property mode Specifies whether the argument is input or output. Can be set for procedures only.
* Possible values are: `IN`, `OUT`, `INOUT`.
* @property name The name of this argument. Can be absent for function return argument.
*/
public data class RoutineArgumentArgs(
public val argumentKind: Output? = null,
public val dataType: Output? = null,
public val mode: Output? = null,
public val name: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.gcp.bigquery.inputs.RoutineArgumentArgs =
com.pulumi.gcp.bigquery.inputs.RoutineArgumentArgs.builder()
.argumentKind(argumentKind?.applyValue({ args0 -> args0 }))
.dataType(dataType?.applyValue({ args0 -> args0 }))
.mode(mode?.applyValue({ args0 -> args0 }))
.name(name?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [RoutineArgumentArgs].
*/
@PulumiTagMarker
public class RoutineArgumentArgsBuilder internal constructor() {
private var argumentKind: Output? = null
private var dataType: Output? = null
private var mode: Output? = null
private var name: Output? = null
/**
* @param value Defaults to FIXED_TYPE.
* Default value is `FIXED_TYPE`.
* Possible values are: `FIXED_TYPE`, `ANY_TYPE`.
*/
@JvmName("pdygnnerckgbuewy")
public suspend fun argumentKind(`value`: Output) {
this.argumentKind = value
}
/**
* @param value A JSON schema for the data type. Required unless argumentKind = ANY_TYPE.
* ~>**NOTE**: Because this field expects a JSON string, any changes to the string
* will create a diff, even if the JSON itself hasn't changed. If the API returns
* a different value for the same schema, e.g. it switched the order of values
* or replaced STRUCT field type with RECORD field type, we currently cannot
* suppress the recurring diff this causes. As a workaround, we recommend using
* the schema as returned by the API.
*/
@JvmName("lsdquyomvqtoajhl")
public suspend fun dataType(`value`: Output) {
this.dataType = value
}
/**
* @param value Specifies whether the argument is input or output. Can be set for procedures only.
* Possible values are: `IN`, `OUT`, `INOUT`.
*/
@JvmName("tpcvtmkateknrnlf")
public suspend fun mode(`value`: Output) {
this.mode = value
}
/**
* @param value The name of this argument. Can be absent for function return argument.
*/
@JvmName("tapskurdxsitenur")
public suspend fun name(`value`: Output) {
this.name = value
}
/**
* @param value Defaults to FIXED_TYPE.
* Default value is `FIXED_TYPE`.
* Possible values are: `FIXED_TYPE`, `ANY_TYPE`.
*/
@JvmName("bddchybybqsqdtfp")
public suspend fun argumentKind(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.argumentKind = mapped
}
/**
* @param value A JSON schema for the data type. Required unless argumentKind = ANY_TYPE.
* ~>**NOTE**: Because this field expects a JSON string, any changes to the string
* will create a diff, even if the JSON itself hasn't changed. If the API returns
* a different value for the same schema, e.g. it switched the order of values
* or replaced STRUCT field type with RECORD field type, we currently cannot
* suppress the recurring diff this causes. As a workaround, we recommend using
* the schema as returned by the API.
*/
@JvmName("eooolyebxevumema")
public suspend fun dataType(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.dataType = mapped
}
/**
* @param value Specifies whether the argument is input or output. Can be set for procedures only.
* Possible values are: `IN`, `OUT`, `INOUT`.
*/
@JvmName("ggryejfqldfxaqtk")
public suspend fun mode(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.mode = mapped
}
/**
* @param value The name of this argument. Can be absent for function return argument.
*/
@JvmName("fjoixejdncknfqxs")
public suspend fun name(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.name = mapped
}
internal fun build(): RoutineArgumentArgs = RoutineArgumentArgs(
argumentKind = argumentKind,
dataType = dataType,
mode = mode,
name = name,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy