Skip to content

Commit a4b84f2

Browse files
l46kokcopybara-github
authored andcommitted
Rename CelFieldValueType to EncodingType
PiperOrigin-RevId: 754183705
1 parent f872944 commit a4b84f2

File tree

8 files changed

+52
-54
lines changed

8 files changed

+52
-54
lines changed

common/src/main/java/dev/cel/common/internal/DefaultLiteDescriptorPool.java

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
import dev.cel.common.annotations.Internal;
4040
import dev.cel.protobuf.CelLiteDescriptor;
4141
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor;
42-
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor.CelFieldValueType;
42+
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor.EncodingType;
4343
import dev.cel.protobuf.CelLiteDescriptor.MessageLiteDescriptor;
4444
import java.util.NoSuchElementException;
4545
import java.util.Optional;
@@ -98,7 +98,7 @@ private static MessageLiteDescriptor newMessageInfo(WellKnownProto wellKnownProt
9898
/* fieldNumber= */ 1,
9999
/* fieldName= */ "paths",
100100
/* javaType= */ FieldLiteDescriptor.JavaType.STRING,
101-
/* celFieldValueType= */ CelFieldValueType.LIST,
101+
/* encodingType= */ EncodingType.LIST,
102102
/* protoFieldType= */ FieldLiteDescriptor.Type.STRING,
103103
/* isPacked= */ false,
104104
/* fieldProtoTypeName= */ ""));
@@ -167,7 +167,7 @@ private static MessageLiteDescriptor newMessageInfo(WellKnownProto wellKnownProt
167167
/* fieldNumber= */ 1,
168168
/* fieldName= */ "fields",
169169
/* javaType= */ FieldLiteDescriptor.JavaType.MESSAGE,
170-
/* celFieldValueType= */ CelFieldValueType.MAP,
170+
/* encodingType= */ EncodingType.MAP,
171171
/* protoFieldType= */ FieldLiteDescriptor.Type.MESSAGE,
172172
/* isPacked= */ false,
173173
/* fieldProtoTypeName= */ "google.protobuf.Struct.FieldsEntry"));
@@ -179,7 +179,7 @@ private static MessageLiteDescriptor newMessageInfo(WellKnownProto wellKnownProt
179179
/* fieldNumber= */ 1,
180180
/* fieldName= */ "null_value",
181181
/* javaType= */ FieldLiteDescriptor.JavaType.ENUM,
182-
/* celFieldValueType= */ CelFieldValueType.SCALAR,
182+
/* encodingType= */ EncodingType.SINGULAR,
183183
/* protoFieldType= */ FieldLiteDescriptor.Type.ENUM,
184184
/* isPacked= */ false,
185185
/* fieldProtoTypeName= */ "google.protobuf.NullValue"));
@@ -188,7 +188,7 @@ private static MessageLiteDescriptor newMessageInfo(WellKnownProto wellKnownProt
188188
/* fieldNumber= */ 2,
189189
/* fieldName= */ "number_value",
190190
/* javaType= */ FieldLiteDescriptor.JavaType.DOUBLE,
191-
/* celFieldValueType= */ CelFieldValueType.SCALAR,
191+
/* encodingType= */ EncodingType.SINGULAR,
192192
/* protoFieldType= */ FieldLiteDescriptor.Type.DOUBLE,
193193
/* isPacked= */ false,
194194
/* fieldProtoTypeName= */ ""));
@@ -197,7 +197,7 @@ private static MessageLiteDescriptor newMessageInfo(WellKnownProto wellKnownProt
197197
/* fieldNumber= */ 3,
198198
/* fieldName= */ "string_value",
199199
/* javaType= */ FieldLiteDescriptor.JavaType.STRING,
200-
/* celFieldValueType= */ CelFieldValueType.SCALAR,
200+
/* encodingType= */ EncodingType.SINGULAR,
201201
/* protoFieldType= */ FieldLiteDescriptor.Type.STRING,
202202
/* isPacked= */ false,
203203
/* fieldProtoTypeName= */ ""));
@@ -206,7 +206,7 @@ private static MessageLiteDescriptor newMessageInfo(WellKnownProto wellKnownProt
206206
/* fieldNumber= */ 4,
207207
/* fieldName= */ "bool_value",
208208
/* javaType= */ FieldLiteDescriptor.JavaType.BOOLEAN,
209-
/* celFieldValueType= */ CelFieldValueType.SCALAR,
209+
/* encodingType= */ EncodingType.SINGULAR,
210210
/* protoFieldType= */ FieldLiteDescriptor.Type.BOOL,
211211
/* isPacked= */ false,
212212
/* fieldProtoTypeName= */ ""));
@@ -215,7 +215,7 @@ private static MessageLiteDescriptor newMessageInfo(WellKnownProto wellKnownProt
215215
/* fieldNumber= */ 5,
216216
/* fieldName= */ "struct_value",
217217
/* javaType= */ FieldLiteDescriptor.JavaType.MESSAGE,
218-
/* celFieldValueType= */ CelFieldValueType.SCALAR,
218+
/* encodingType= */ EncodingType.SINGULAR,
219219
/* protoFieldType= */ FieldLiteDescriptor.Type.MESSAGE,
220220
/* isPacked= */ false,
221221
/* fieldProtoTypeName= */ "google.protobuf.Struct"));
@@ -224,7 +224,7 @@ private static MessageLiteDescriptor newMessageInfo(WellKnownProto wellKnownProt
224224
/* fieldNumber= */ 6,
225225
/* fieldName= */ "list_value",
226226
/* javaType= */ FieldLiteDescriptor.JavaType.MESSAGE,
227-
/* celFieldValueType= */ CelFieldValueType.SCALAR,
227+
/* encodingType= */ EncodingType.SINGULAR,
228228
/* protoFieldType= */ FieldLiteDescriptor.Type.MESSAGE,
229229
/* isPacked= */ false,
230230
/* fieldProtoTypeName= */ "google.protobuf.ListValue"));
@@ -236,7 +236,7 @@ private static MessageLiteDescriptor newMessageInfo(WellKnownProto wellKnownProt
236236
/* fieldNumber= */ 1,
237237
/* fieldName= */ "values",
238238
/* javaType= */ FieldLiteDescriptor.JavaType.MESSAGE,
239-
/* celFieldValueType= */ CelFieldValueType.LIST,
239+
/* encodingType= */ EncodingType.LIST,
240240
/* protoFieldType= */ FieldLiteDescriptor.Type.MESSAGE,
241241
/* isPacked= */ false,
242242
/* fieldProtoTypeName= */ "google.protobuf.Value"));
@@ -284,7 +284,7 @@ private static FieldLiteDescriptor newPrimitiveFieldDescriptor(
284284
/* fieldNumber= */ fieldNumber,
285285
/* fieldName= */ fieldName,
286286
/* javaType= */ javaType,
287-
/* celFieldValueType= */ CelFieldValueType.SCALAR,
287+
/* encodingType= */ EncodingType.SINGULAR,
288288
/* protoFieldType= */ protoFieldType,
289289
/* isPacked= */ false,
290290
/* fieldProtoTypeName= */ "");

common/src/main/java/dev/cel/common/values/ProtoLiteCelValueConverter.java

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
import dev.cel.common.internal.CelLiteDescriptorPool;
3535
import dev.cel.common.internal.WellKnownProto;
3636
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor;
37-
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor.CelFieldValueType;
37+
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor.EncodingType;
3838
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor.JavaType;
3939
import dev.cel.protobuf.CelLiteDescriptor.MessageLiteDescriptor;
4040
import java.io.IOException;
@@ -164,17 +164,16 @@ CelValue getDefaultCelValue(String protoTypeName, String fieldName) {
164164
}
165165

166166
private Object getDefaultValue(FieldLiteDescriptor fieldDescriptor) {
167-
FieldLiteDescriptor.CelFieldValueType celFieldValueType =
168-
fieldDescriptor.getCelFieldValueType();
169-
switch (celFieldValueType) {
167+
EncodingType encodingType = fieldDescriptor.getEncodingType();
168+
switch (encodingType) {
170169
case LIST:
171170
return ImmutableList.of();
172171
case MAP:
173172
return ImmutableMap.of();
174-
case SCALAR:
173+
case SINGULAR:
175174
return getScalarDefaultValue(fieldDescriptor);
176175
}
177-
throw new IllegalStateException("Unexpected cel field value type: " + celFieldValueType);
176+
throw new IllegalStateException("Unexpected encoding type: " + encodingType);
178177
}
179178

180179
private Object getScalarDefaultValue(FieldLiteDescriptor fieldDescriptor) {
@@ -265,8 +264,8 @@ MessageFields readAllFields(byte[] bytes, String protoTypeName) throws IOExcepti
265264
payload = readFixed64BitField(inputStream, fieldDescriptor);
266265
break;
267266
case WireFormat.WIRETYPE_LENGTH_DELIMITED:
268-
CelFieldValueType celFieldValueType = fieldDescriptor.getCelFieldValueType();
269-
switch (celFieldValueType) {
267+
EncodingType encodingType = fieldDescriptor.getEncodingType();
268+
switch (encodingType) {
270269
case LIST:
271270
if (fieldDescriptor.getIsPacked()) {
272271
payload = readPackedRepeatedFields(inputStream, fieldDescriptor);
@@ -305,7 +304,7 @@ MessageFields readAllFields(byte[] bytes, String protoTypeName) throws IOExcepti
305304
throw new IllegalArgumentException("Unexpected wire type: " + tagWireType);
306305
}
307306

308-
if (fieldDescriptor.getCelFieldValueType().equals(CelFieldValueType.LIST)) {
307+
if (fieldDescriptor.getEncodingType().equals(EncodingType.LIST)) {
309308
String fieldName = fieldDescriptor.getFieldName();
310309
List<Object> repeatedValues =
311310
repeatedFieldValues.computeIfAbsent(

common/src/test/java/dev/cel/common/internal/DefaultLiteDescriptorPoolTest.java

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
import com.google.testing.junit.testparameterinjector.TestParameterInjector;
2525
import dev.cel.expr.conformance.proto3.TestAllTypesProto3CelDescriptor;
2626
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor;
27-
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor.CelFieldValueType;
27+
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor.EncodingType;
2828
import dev.cel.protobuf.CelLiteDescriptor.MessageLiteDescriptor;
2929
import java.util.NoSuchElementException;
3030
import org.junit.Rule;
@@ -74,13 +74,11 @@ public void wellKnownProto_compareAgainstFullDescriptors_allFieldPropertiesAreEq
7474
.isEqualTo(fullFieldDescriptor.isPacked());
7575
expect
7676
.withMessage(expectMessageTitle)
77-
.that(fieldLiteDescriptor.getCelFieldValueType())
77+
.that(fieldLiteDescriptor.getEncodingType())
7878
.isEqualTo(
7979
fullFieldDescriptor.isMapField()
80-
? CelFieldValueType.MAP
81-
: fullFieldDescriptor.isRepeated()
82-
? CelFieldValueType.LIST
83-
: CelFieldValueType.SCALAR);
80+
? EncodingType.MAP
81+
: fullFieldDescriptor.isRepeated() ? EncodingType.LIST : EncodingType.SINGULAR);
8482
// Note: enums such as JavaType are semantically equal, but their instances differ.
8583
expect
8684
.withMessage(expectMessageTitle)

protobuf/src/main/java/dev/cel/protobuf/CelLiteDescriptor.java

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -141,21 +141,22 @@ public static final class FieldLiteDescriptor {
141141
private final JavaType javaType;
142142
private final String fieldProtoTypeName;
143143
private final Type protoFieldType;
144-
private final CelFieldValueType celFieldValueType;
144+
private final EncodingType encodingType;
145145
private final boolean isPacked;
146146

147147
/**
148-
* Enumeration of the CEL field value type. This is analogous to the following from field
148+
* Enumeration of encoding type. This describes how CEL should deserialize the encoded message
149+
* bytes using protobuf's wire format. This is analogous to the following from field
149150
* descriptors:
150151
*
151152
* <ul>
152153
* <li>LIST: Repeated Field
153154
* <li>MAP: Map Field
154-
* <li>SCALAR: Neither of above (scalars, messages)
155+
* <li>SINGULAR: Neither of above (scalars, messages)
155156
* </ul>
156157
*/
157-
public enum CelFieldValueType {
158-
SCALAR,
158+
public enum EncodingType {
159+
SINGULAR,
159160
LIST,
160161
MAP
161162
}
@@ -216,8 +217,8 @@ public JavaType getJavaType() {
216217
return javaType;
217218
}
218219

219-
public CelFieldValueType getCelFieldValueType() {
220-
return celFieldValueType;
220+
public EncodingType getEncodingType() {
221+
return encodingType;
221222
}
222223

223224
/**
@@ -250,8 +251,8 @@ public String getFieldProtoTypeName() {
250251
* @param fieldName Name of the field
251252
* @param javaType Canonical Java type name (ex: Long, Double, Float, Message... see
252253
* com.google.protobuf.Descriptors#JavaType)
253-
* @param celFieldValueType Describes whether the field is a scalar, list or a map with respect
254-
* to CEL.
254+
* @param encodingType Describes whether the field is a singular (primitives or messages), list
255+
* or a map with respect to CEL.
255256
* @param protoFieldType Protobuf Field Type (ex: INT32, SINT32, GROUP, MESSAGE... see
256257
* com.google.protobuf.Descriptors#Type)
257258
* @param fieldProtoTypeName Fully qualified protobuf type name for the field. Empty if the
@@ -262,14 +263,14 @@ public FieldLiteDescriptor(
262263
int fieldNumber,
263264
String fieldName,
264265
JavaType javaType,
265-
CelFieldValueType celFieldValueType, // LIST, MAP, SCALAR
266+
EncodingType encodingType, // LIST, MAP, SINGULAR
266267
Type protoFieldType, // INT32, SINT32, GROUP, MESSAGE... (See Descriptors#Type)
267268
boolean isPacked,
268269
String fieldProtoTypeName) {
269270
this.fieldNumber = fieldNumber;
270271
this.fieldName = Objects.requireNonNull(fieldName);
271272
this.javaType = javaType;
272-
this.celFieldValueType = celFieldValueType;
273+
this.encodingType = encodingType;
273274
this.protoFieldType = protoFieldType;
274275
this.isPacked = isPacked;
275276
this.fieldProtoTypeName = Objects.requireNonNull(fieldProtoTypeName);

protobuf/src/main/java/dev/cel/protobuf/LiteDescriptorCodegenMetadata.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import com.google.errorprone.annotations.CanIgnoreReturnValue;
2020
import dev.cel.common.annotations.Internal;
2121
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor;
22+
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor.EncodingType;
2223
import org.jspecify.annotations.Nullable;
2324

2425
/**
@@ -86,10 +87,10 @@ public String getJavaTypeEnumName() {
8687
return getFullyQualifiedEnumName(getJavaType());
8788
}
8889

89-
// Fully-qualified name to the CelFieldValueType enumeration (ex:
90-
// dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor.SCALAR)
91-
public String getCelFieldValueTypeEnumName() {
92-
return getFullyQualifiedEnumName(getCelFieldValueType());
90+
// Fully-qualified name to the EncodingType enumeration (ex:
91+
// dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor.SINGULAR)
92+
public String getEncodingTypeEnumName() {
93+
return getFullyQualifiedEnumName(getEncodingType());
9394
}
9495

9596
// Fully-qualified name to the Proto Type enumeration (ex:
@@ -106,7 +107,7 @@ public String getProtoFieldTypeEnumName() {
106107

107108
abstract FieldLiteDescriptor.Type getProtoFieldType();
108109

109-
abstract FieldLiteDescriptor.CelFieldValueType getCelFieldValueType();
110+
abstract EncodingType getEncodingType();
110111

111112
private static String getFullyQualifiedEnumName(Object enumValue) {
112113
String enumClassName = enumValue.getClass().getName();
@@ -122,8 +123,7 @@ abstract static class Builder {
122123

123124
abstract Builder setJavaType(FieldLiteDescriptor.JavaType javaTypeEnum);
124125

125-
abstract Builder setCelFieldValueType(
126-
FieldLiteDescriptor.CelFieldValueType celFieldValueTypeEnum);
126+
abstract Builder setEncodingType(EncodingType encodingTypeEnum);
127127

128128
abstract Builder setProtoFieldType(FieldLiteDescriptor.Type protoFieldTypeEnum);
129129

protobuf/src/main/java/dev/cel/protobuf/ProtoDescriptorCollector.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
import dev.cel.common.internal.ProtoJavaQualifiedNames;
2727
import dev.cel.common.internal.WellKnownProto;
2828
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor;
29-
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor.CelFieldValueType;
29+
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor.EncodingType;
3030
import dev.cel.protobuf.LiteDescriptorCodegenMetadata.FieldLiteDescriptorMetadata;
3131
import java.util.ArrayDeque;
3232

@@ -79,15 +79,15 @@ ImmutableList<LiteDescriptorCodegenMetadata> collectCodegenMetadata(
7979
}
8080

8181
if (fieldDescriptor.isMapField()) {
82-
fieldDescriptorCodegenBuilder.setCelFieldValueType(CelFieldValueType.MAP);
82+
fieldDescriptorCodegenBuilder.setEncodingType(EncodingType.MAP);
8383
// Maps are treated as messages in proto.
8484
// TODO: Directly embed key/value information within the field descriptor.
8585
// This will further reduce descriptor binary size.
8686
descriptorQueue.push(fieldDescriptor.getMessageType());
8787
} else if (fieldDescriptor.isRepeated()) {
88-
fieldDescriptorCodegenBuilder.setCelFieldValueType(CelFieldValueType.LIST);
88+
fieldDescriptorCodegenBuilder.setEncodingType(EncodingType.LIST);
8989
} else {
90-
fieldDescriptorCodegenBuilder.setCelFieldValueType(CelFieldValueType.SCALAR);
90+
fieldDescriptorCodegenBuilder.setEncodingType(EncodingType.SINGULAR);
9191
}
9292

9393
descriptorCodegenBuilder.addFieldDescriptor(fieldDescriptorCodegenBuilder.build());

protobuf/src/main/java/dev/cel/protobuf/templates/cel_lite_descriptor_template.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ public final class ${descriptor_class_name} extends CelLiteDescriptor {
4545
${field_descriptor.fieldNumber},
4646
"${field_descriptor.fieldName}",
4747
${field_descriptor.javaTypeEnumName},
48-
${field_descriptor.celFieldValueTypeEnumName},
48+
${field_descriptor.encodingTypeEnumName},
4949
${field_descriptor.protoFieldTypeEnumName},
5050
${field_descriptor.isPacked},
5151
"${field_descriptor.fieldProtoTypeName}"

protobuf/src/test/java/dev/cel/protobuf/CelLiteDescriptorTest.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
import com.google.testing.junit.testparameterinjector.TestParameterInjector;
2020
import dev.cel.expr.conformance.proto3.TestAllTypesProto3LiteCelDescriptor;
2121
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor;
22-
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor.CelFieldValueType;
22+
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor.EncodingType;
2323
import dev.cel.protobuf.CelLiteDescriptor.FieldLiteDescriptor.JavaType;
2424
import dev.cel.protobuf.CelLiteDescriptor.MessageLiteDescriptor;
2525
import java.util.Map;
@@ -86,7 +86,7 @@ public void fieldDescriptor_scalarField() {
8686
FieldLiteDescriptor fieldLiteDescriptor =
8787
testAllTypesDescriptor.getByFieldNameOrThrow("single_string");
8888

89-
assertThat(fieldLiteDescriptor.getCelFieldValueType()).isEqualTo(CelFieldValueType.SCALAR);
89+
assertThat(fieldLiteDescriptor.getEncodingType()).isEqualTo(EncodingType.SINGULAR);
9090
assertThat(fieldLiteDescriptor.getJavaType()).isEqualTo(JavaType.STRING);
9191
assertThat(fieldLiteDescriptor.getProtoFieldType()).isEqualTo(FieldLiteDescriptor.Type.STRING);
9292
}
@@ -112,7 +112,7 @@ public void fieldDescriptor_mapField() {
112112
FieldLiteDescriptor fieldLiteDescriptor =
113113
testAllTypesDescriptor.getByFieldNameOrThrow("map_bool_string");
114114

115-
assertThat(fieldLiteDescriptor.getCelFieldValueType()).isEqualTo(CelFieldValueType.MAP);
115+
assertThat(fieldLiteDescriptor.getEncodingType()).isEqualTo(EncodingType.MAP);
116116
assertThat(fieldLiteDescriptor.getJavaType()).isEqualTo(JavaType.MESSAGE);
117117
assertThat(fieldLiteDescriptor.getProtoFieldType()).isEqualTo(FieldLiteDescriptor.Type.MESSAGE);
118118
}
@@ -126,7 +126,7 @@ public void fieldDescriptor_repeatedField() {
126126
FieldLiteDescriptor fieldLiteDescriptor =
127127
testAllTypesDescriptor.getByFieldNameOrThrow("repeated_int64");
128128

129-
assertThat(fieldLiteDescriptor.getCelFieldValueType()).isEqualTo(CelFieldValueType.LIST);
129+
assertThat(fieldLiteDescriptor.getEncodingType()).isEqualTo(EncodingType.LIST);
130130
assertThat(fieldLiteDescriptor.getJavaType()).isEqualTo(JavaType.LONG);
131131
assertThat(fieldLiteDescriptor.getIsPacked()).isTrue();
132132
assertThat(fieldLiteDescriptor.getProtoFieldType()).isEqualTo(FieldLiteDescriptor.Type.INT64);
@@ -141,7 +141,7 @@ public void fieldDescriptor_nestedMessage() {
141141
FieldLiteDescriptor fieldLiteDescriptor =
142142
testAllTypesDescriptor.getByFieldNameOrThrow("standalone_message");
143143

144-
assertThat(fieldLiteDescriptor.getCelFieldValueType()).isEqualTo(CelFieldValueType.SCALAR);
144+
assertThat(fieldLiteDescriptor.getEncodingType()).isEqualTo(EncodingType.SINGULAR);
145145
assertThat(fieldLiteDescriptor.getJavaType()).isEqualTo(JavaType.MESSAGE);
146146
assertThat(fieldLiteDescriptor.getProtoFieldType()).isEqualTo(FieldLiteDescriptor.Type.MESSAGE);
147147
}

0 commit comments

Comments
 (0)