package expr

import "google.golang.org/genproto/googleapis/type/expr"

Index

Variables

var File_google_type_expr_proto protoreflect.FileDescriptor

Types

type Expr

type Expr struct {

	// Textual representation of an expression in Common Expression Language
	// syntax.
	Expression string `protobuf:"bytes,1,opt,name=expression,proto3" json:"expression,omitempty"`
	// 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.
	Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
	// Optional. Description of the expression. This is a longer text which
	// describes the expression, e.g. when hovered over it in a UI.
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// Optional. String indicating the location of the expression for error
	// reporting, e.g. a file name and a position in the file.
	Location string `protobuf:"bytes,4,opt,name=location,proto3" json:"location,omitempty"`
	// contains filtered or unexported fields
}

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.

func (*Expr) Descriptor

func (*Expr) Descriptor() ([]byte, []int)

Deprecated: Use Expr.ProtoReflect.Descriptor instead.

func (*Expr) GetDescription

func (x *Expr) GetDescription() string

func (*Expr) GetExpression

func (x *Expr) GetExpression() string

func (*Expr) GetLocation

func (x *Expr) GetLocation() string

func (*Expr) GetTitle

func (x *Expr) GetTitle() string

func (*Expr) ProtoMessage

func (*Expr) ProtoMessage()

func (*Expr) ProtoReflect

func (x *Expr) ProtoReflect() protoreflect.Message

func (*Expr) Reset

func (x *Expr) Reset()

func (*Expr) String

func (x *Expr) String() string

Source Files

expr.pb.go

Version
v0.0.0-20250219182151-9fdb1cabc7b2 (latest)
Published
Feb 19, 2025
Platform
linux/amd64
Imports
4 packages
Last checked
20 hours ago

Tools for package owners.