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