github.com/solo-io/cue@v0.4.7/encoding/protobuf/jsonpb/testdata/encoder/enums.txtar (about) 1 -- schema.cue -- 2 enum: [string]: 3 { "foo", #enumValue: 1 } | 4 { "bar", #enumValue: 2 } @protobuf(1,Enum) 5 6 defEnum: [string]: #foo | #bar @protobuf(2,Enum) 7 8 #foo: 1 9 #bar: 2 10 11 typeEnum: [string]: #Enum @protobuf(3,Enum) 12 13 #Enum: #foo | #bar 14 15 // TODO: consider supporting @symbol(foo) or @json(,symbol=foo) 16 // symbolEnum: [string]: 17 // { 1, @symbol(foo) } | 18 // { 2, @symbol(bar) } 19 20 21 singleEnum: #single @protobuf(3,Enum) 22 23 #single: 1 24 25 badEnum: { string, #enumValue: 1 } | { "two", #enumValue: 2 } 26 27 28 -- value.cue -- 29 enum: asIs: "foo" 30 enum: asIsUnknown: "foobar" 31 32 // Convert integers to strings 33 defEnum: foo: 1 34 defEnum: bar: 2 35 defEnum: baz: 3 36 37 38 typeEnum: foo: 1 39 typeEnum: bar: 2 40 typeEnum: baz: 3 41 42 43 // TODO: consider supporting @symbol(foo) or @json(,symbol=foo) 44 // symbolEnum: foo: "foo" 45 // symbolEnum: bar: "bar" 46 // symbolEnum: baz: "baz" 47 48 singleEnum: 1 49 50 -- out/jsonpb -- 51 enum: asIs: "foo" 52 enum: asIsUnknown: "foobar" 53 54 // Convert integers to strings 55 defEnum: foo: "foo" 56 defEnum: bar: "bar" 57 defEnum: baz: 3 58 59 typeEnum: foo: "foo" 60 typeEnum: bar: "bar" 61 typeEnum: baz: 3 62 63 // TODO: consider supporting @symbol(foo) or @json(,symbol=foo) 64 // symbolEnum: foo: "foo" 65 // symbolEnum: bar: "bar" 66 // symbolEnum: baz: "baz" 67 68 singleEnum: 1