cuelang.org/go@v0.10.1/encoding/protobuf/jsonpb/testdata/encoder/enums.txtar (about)

     1  -- schema.cue --
     2  enum: {
     3  	[string]:
     4  		{"foo", #enumValue: 1} |
     5  		{"bar", #enumValue: 2} @protobuf(1,Enum)
     6  }
     7  
     8  defEnum: {
     9  	[string]: #foo | #bar @protobuf(2,Enum)
    10  }
    11  
    12  #foo: 1
    13  #bar: 2
    14  
    15  typeEnum: {
    16  	[string]: #Enum @protobuf(3,Enum)
    17  }
    18  
    19  #Enum: #foo | #bar
    20  
    21  // TODO: consider supporting @symbol(foo) or @json(,symbol=foo)
    22  // symbolEnum: [string]:
    23  //     { 1, @symbol(foo) } |
    24  //     { 2, @symbol(bar) }
    25  
    26  singleEnum: #single @protobuf(3,Enum)
    27  
    28  #single: 1
    29  
    30  badEnum: {string, #enumValue: 1} | {"two", #enumValue: 2}
    31  -- value.cue --
    32  enum: asIs:        "foo"
    33  enum: asIsUnknown: "foobar"
    34  
    35  // Convert integers to strings
    36  defEnum: foo: 1
    37  defEnum: bar: 2
    38  defEnum: baz: 3
    39  
    40  typeEnum: foo: 1
    41  typeEnum: bar: 2
    42  typeEnum: baz: 3
    43  
    44  // TODO: consider supporting @symbol(foo) or @json(,symbol=foo)
    45  // symbolEnum: foo: "foo"
    46  // symbolEnum: bar: "bar"
    47  // symbolEnum: baz: "baz"
    48  
    49  singleEnum: 1
    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