github.com/jhump/protoreflect@v1.16.0/internal/testprotos/desc_test_defaults.proto (about)

     1  syntax = "proto" // multi-line string literal
     2           "2";
     3  
     4  option go_package = "github.com/" // more multi-line string literals
     5                      "jhump/protoreflect/"
     6                      "internal/testprotos";
     7  
     8  package testprotos;
     9  
    10  message PrimitiveDefaults {
    11  	//// Floats
    12  
    13  	// simple default
    14  	optional float fl32 = 1 [default = 3.14159];
    15  	optional double fl64 = 2 [default = 3.14159];
    16  
    17  	// exponent notation
    18  	optional float fl32d = 3 [default = 6.022140857e23];
    19  	optional double fl64d = 4 [default = 6.022140857e23];
    20  
    21  	// special values: inf, -inf, and nan
    22  	optional float fl32inf = 5 [default = inf];
    23  	optional double fl64inf = 6 [default = inf];
    24  	optional float fl32negInf = 7 [default = -inf];
    25  	optional double fl64negInf = 8 [default = -inf];
    26  	optional float fl32nan = 9 [default = nan];
    27  	optional double fl64nan = 10 [default = nan];
    28  
    29  	//// Booleans
    30  
    31  	optional bool bl1 = 11 [default = true];
    32  	optional bool bl2 = 12 [default = false];
    33  
    34  	//// Ints
    35  
    36  	// signed
    37  	optional int32 i32 = 13 [default = 10101];
    38  	optional int32 i32n = 14 [default = -10101];
    39  	optional int32 i32x = 15 [default = 0x20202];
    40  	optional int32 i32xn = 16 [default = -0x20202];
    41  	optional int64 i64 = 17 [default = 10101];
    42  	optional int64 i64n = 18 [default = -10101];
    43  	optional int64 i64x = 19 [default = 0x20202];
    44  	optional int64 i64xn = 20 [default = -0x20202];
    45  	optional sint32 i32s = 21 [default = 10101];
    46  	optional sint32 i32sn = 22 [default = -10101];
    47  	optional sint32 i32sx = 23 [default = 0x20202];
    48  	optional sint32 i32sxn = 24 [default = -0x20202];
    49  	optional sint64 i64s = 25 [default = 10101];
    50  	optional sint64 i64sn = 26 [default = -10101];
    51  	optional sint64 i64sx = 27 [default = 0x20202];
    52  	optional sint64 i64sxn = 28 [default = -0x20202];
    53  	optional sfixed32 i32f = 29 [default = 10101];
    54  	optional sfixed32 i32fn = 30 [default = -10101];
    55  	optional sfixed32 i32fx = 31 [default = 0x20202];
    56  	optional sfixed32 i32fxn = 32 [default = -0x20202];
    57  	optional sfixed64 i64f = 33 [default = 10101];
    58  	optional sfixed64 i64fn = 34 [default = -10101];
    59  	optional sfixed64 i64fx = 35 [default = 0x20202];
    60  	optional sfixed64 i64fxn = 36 [default = -0x20202];
    61  
    62  	// unsigned
    63  	optional uint32 u32 = 37 [default = 10101];
    64  	optional uint32 u32x = 38 [default = 0x20202];
    65  	optional uint64 u64 = 39 [default = 10101];
    66  	optional uint64 u64x = 40 [default = 0x20202];
    67  	optional fixed32 u32f = 41 [default = 10101];
    68  	optional fixed32 u32fx = 42 [default = 0x20202];
    69  	optional fixed64 u64f = 43 [default = 10101];
    70  	optional fixed64 u64fx = 44 [default = 0x20202];
    71  }
    72  
    73  message StringAndBytesDefaults {
    74  	optional string dq = 1 [default = "this is a string with \"nested quotes\""];
    75  	optional string sq = 2 [default = 'this is a string with "nested quotes"'];
    76  
    77  	optional bytes escaped_bytes = 3 [default = "\0\001\a\b\f\n\r\t\v\\\'\"\xfe"];
    78  	optional string utf8_string = 4 [default = "\341\210\264"]; // this is utf-8 for \u1234
    79    	optional string string_with_zero = 5 [default = "hel\000lo"];
    80    	optional bytes bytes_with_zero = 6 [default = "wor\000ld"];
    81  
    82  	optional string really_long_string = 7 [default = "this is "
    83                                             "a really long string constant, so it "
    84                                             "spans multiple lines! it also tests "
    85                                             "support for multi-line string literals "
    86                                             "in option values"];
    87  }
    88  
    89  enum Color {
    90  	RED = 0;
    91  	GREEN = 1;
    92  	BLUE = 2;
    93  }
    94  
    95  enum Number {
    96  	option allow_alias = true;
    97  	ZERO = 0;
    98  	ZED = 0;
    99  	NIL = 0;
   100  	NULL = 0;
   101  	ONE = 1;
   102  	UNO = 1;
   103  	TWO = 2;
   104  	DOS = 2;
   105  }
   106  
   107  message EnumDefaults {
   108  	optional Color red = 1 [default = RED];
   109  	optional Color green = 2 [default = GREEN];
   110  	optional Color blue = 3 [default = BLUE];
   111  	optional Number zero = 4 [default = ZERO];
   112  	optional Number zed = 5 [default = ZED];
   113  	optional Number one = 6 [default = ONE];
   114  	optional Number dos = 7 [default = DOS];
   115  }
   116  
   117  message MoarFloats {
   118  	optional float a = 1 [default = 1];
   119  	optional float b = 2 [default = 1.];
   120  	optional float c = 3 [default = 1.01];
   121  	optional float d = 4 [default = .1];
   122  	optional float e = 5 [default = 1.e5];
   123  	optional float f = 6 [default = 1.e-5];
   124  }