com.pulumi.googlenative.secretmanager.v1beta1.kotlin.inputs.ExprArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.googlenative.secretmanager.v1beta1.kotlin.inputs
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.googlenative.secretmanager.v1beta1.inputs.ExprArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
* Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: "Summary size limit" description: "Determines if a summary is less than 100 chars" expression: "document.summary.size() < 100" Example (Equality): title: "Requestor is owner" description: "Determines if requestor is the document owner" expression: "document.owner == request.auth.claims.email" Example (Logic): title: "Public documents" description: "Determine whether the document should be publicly visible" expression: "document.type != 'private' && document.type != 'internal'" Example (Data Manipulation): title: "Notification string" description: "Create a notification string with a timestamp." expression: "'New message received at ' + string(document.create_time)" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information.
* @property description Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
* @property expression Textual representation of an expression in Common Expression Language syntax.
* @property location Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
* @property title Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
*/
public data class ExprArgs(
public val description: Output? = null,
public val expression: Output? = null,
public val location: Output? = null,
public val title: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.googlenative.secretmanager.v1beta1.inputs.ExprArgs =
com.pulumi.googlenative.secretmanager.v1beta1.inputs.ExprArgs.builder()
.description(description?.applyValue({ args0 -> args0 }))
.expression(expression?.applyValue({ args0 -> args0 }))
.location(location?.applyValue({ args0 -> args0 }))
.title(title?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [ExprArgs].
*/
@PulumiTagMarker
public class ExprArgsBuilder internal constructor() {
private var description: Output? = null
private var expression: Output? = null
private var location: Output? = null
private var title: Output? = null
/**
* @param value Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
*/
@JvmName("dtqtoxdjrjjoduuj")
public suspend fun description(`value`: Output) {
this.description = value
}
/**
* @param value Textual representation of an expression in Common Expression Language syntax.
*/
@JvmName("yflcmkrmhriklxfo")
public suspend fun expression(`value`: Output) {
this.expression = value
}
/**
* @param value Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
*/
@JvmName("gagnknejlgxyocsa")
public suspend fun location(`value`: Output) {
this.location = value
}
/**
* @param value Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
*/
@JvmName("xsmfmrgvlujtnqub")
public suspend fun title(`value`: Output) {
this.title = value
}
/**
* @param value Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.
*/
@JvmName("daoalkokrpfbyhda")
public suspend fun description(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.description = mapped
}
/**
* @param value Textual representation of an expression in Common Expression Language syntax.
*/
@JvmName("pndyodwoeawadqye")
public suspend fun expression(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.expression = mapped
}
/**
* @param value Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.
*/
@JvmName("ublgjhmwuhyyfqbm")
public suspend fun location(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.location = mapped
}
/**
* @param value Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression.
*/
@JvmName("tcwgjrpvxaskvexb")
public suspend fun title(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.title = mapped
}
internal fun build(): ExprArgs = ExprArgs(
description = description,
expression = expression,
location = location,
title = title,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy