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