Record Class CelExpr.Struct
java.lang.Object
java.lang.Record
com.google.mu.cel.CelExpr.Struct
- All Implemented Interfaces:
CelExpr
- Enclosing interface:
CelExpr
public static record CelExpr.Struct(String typeName, List<CelExpr.KeyedBy<CelExpr.Ident>> fields, int sourceIndex)
extends Record
implements CelExpr
Struct/message creation, such as
Type{field: value, ?opt_field: value}.- Since:
- 10.7
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.google.mu.cel.CelExpr
CelExpr.Add, CelExpr.And, CelExpr.Binary, CelExpr.BoolValue, CelExpr.BytesValue, CelExpr.Divide, CelExpr.DoubleValue, CelExpr.Element, CelExpr.EqualTo, CelExpr.FunctionCall, CelExpr.GreaterThan, CelExpr.GreaterThanOrEqualTo, CelExpr.Ident, CelExpr.IfElse, CelExpr.In, CelExpr.Index, CelExpr.KeyedBy<K>, CelExpr.LessThan, CelExpr.LessThanOrEqualTo, CelExpr.ListOf, CelExpr.LongValue, CelExpr.Macro, CelExpr.MapOf, CelExpr.MemberCall, CelExpr.Modulo, CelExpr.Multiply, CelExpr.Negative, CelExpr.Not, CelExpr.NotEqualTo, CelExpr.NullValue, CelExpr.OptionalIndex, CelExpr.OptionalSelect, CelExpr.Or, CelExpr.Select, CelExpr.StringValue, CelExpr.Struct, CelExpr.Subtract, CelExpr.UintValue, CelExpr.Unary -
Constructor Summary
ConstructorsConstructorDescriptionStruct(String typeName, List<CelExpr.KeyedBy<CelExpr.Ident>> fields) Struct(String typeName, List<CelExpr.KeyedBy<CelExpr.Ident>> fields, int sourceIndex) Creates an instance of aStructrecord class. -
Method Summary
Modifier and TypeMethodDescriptionfinal booleanIndicates whether some other object is "equal to" this one.fields()Returns the value of thefieldsrecord component.final inthashCode()Returns a hash code value for this object.intReturns the value of thesourceIndexrecord component.toString()Returns a string representation of this record class.typeName()Returns the value of thetypeNamerecord component.withSourceIndex(int index) Returns a copy of this expression with the given source index.
-
Constructor Details
-
Struct
Creates an instance of aStructrecord class.- Parameters:
typeName- the value for thetypeNamerecord componentfields- the value for thefieldsrecord componentsourceIndex- the value for thesourceIndexrecord component
-
Struct
-
-
Method Details
-
withSourceIndex
Description copied from interface:CelExprReturns a copy of this expression with the given source index.- Specified by:
withSourceIndexin interfaceCelExpr
-
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared withObjects::equals(Object,Object); primitive components are compared with thecomparemethod from their corresponding wrapper classes. -
typeName
Returns the value of thetypeNamerecord component.- Returns:
- the value of the
typeNamerecord component
-
fields
Returns the value of thefieldsrecord component.- Returns:
- the value of the
fieldsrecord component
-
sourceIndex
public int sourceIndex()Returns the value of thesourceIndexrecord component.- Specified by:
sourceIndexin interfaceCelExpr- Returns:
- the value of the
sourceIndexrecord component
-