Package com.libdbm.cel.ast
Record Class Struct
java.lang.Object
java.lang.Record
com.libdbm.cel.ast.Struct
- Record Components:
type- the fully qualified type name of the struct being constructedfields- the list of field initializers for the struct
- All Implemented Interfaces:
Expression
public record Struct(String type, List<FieldInitializer> fields)
extends Record
implements Expression
Represents a struct construction in CEL expressions.
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.libdbm.cel.ast.Expression
Expression.Visitor<T> -
Constructor Summary
ConstructorsConstructorDescriptionStruct(String type, List<FieldInitializer> fields) Creates an instance of aStructrecord class. -
Method Summary
Modifier and TypeMethodDescription<T> Taccept(Expression.Visitor<T> visitor) Accepts a visitor to perform operations on this expression node.final 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.final StringtoString()Returns a string representation of this record class.type()Returns the value of thetyperecord component.
-
Constructor Details
-
Method Details
-
accept
Accepts a visitor to perform operations on this expression node.Invokes the appropriate visit method on the provided visitor, dispatching the visit operation to the visitor implementation that corresponds to the type of this expression node.
- Specified by:
acceptin interfaceExpression- Type Parameters:
T- the return type of the visitor's visit operations- Parameters:
visitor- the visitor that will operate on this expression node- Returns:
- the result of the visitor's visit operation
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
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. All components in this record class are compared withObjects::equals(Object,Object). -
type
Returns the value of thetyperecord component.- Returns:
- the value of the
typerecord component
-
fields
Returns the value of thefieldsrecord component.- Returns:
- the value of the
fieldsrecord component
-