54 lines
1.2 KiB
Protocol Buffer
54 lines
1.2 KiB
Protocol Buffer
|
|
syntax = "proto3";
|
||
|
|
|
||
|
|
package roto.test;
|
||
|
|
|
||
|
|
// A comprehensive message containing all primitive types and complex structures
|
||
|
|
// to test the proto-to-rust codegen and runtime accessors.
|
||
|
|
message ComplexMessage {
|
||
|
|
// --- Floating Point ---
|
||
|
|
double d_val = 1;
|
||
|
|
float f_val = 2;
|
||
|
|
|
||
|
|
// --- Integers (Variable Length) ---
|
||
|
|
int32 i32_val = 3;
|
||
|
|
int64 i64_val = 4;
|
||
|
|
uint32 u32_val = 5;
|
||
|
|
uint64 u64_val = 6;
|
||
|
|
sint32 si32_val = 7;
|
||
|
|
sint64 si64_val = 8;
|
||
|
|
|
||
|
|
// --- Integers (Fixed Length) ---
|
||
|
|
fixed32 fx32_val = 9;
|
||
|
|
fixed64 fx64_val = 10;
|
||
|
|
sfixed32 sfx32_val = 11;
|
||
|
|
sfixed64 sfx64_val = 12;
|
||
|
|
|
||
|
|
// --- Other Primitives ---
|
||
|
|
bool b_val = 13;
|
||
|
|
string s_val = 14;
|
||
|
|
bytes bytes_val = 15;
|
||
|
|
|
||
|
|
// --- Enumerations ---
|
||
|
|
enum Status {
|
||
|
|
UNKNOWN = 0;
|
||
|
|
ACTIVE = 1;
|
||
|
|
INACTIVE = 2;
|
||
|
|
DELETED = 3;
|
||
|
|
}
|
||
|
|
Status status = 16;
|
||
|
|
|
||
|
|
// --- Repeated Fields ---
|
||
|
|
// Testing packed primitives and non-packed types
|
||
|
|
repeated int32 repeated_i32 = 17;
|
||
|
|
repeated string repeated_string = 18;
|
||
|
|
repeated NestedMessage repeated_nested = 19;
|
||
|
|
|
||
|
|
// --- Nested Messages ---
|
||
|
|
message NestedMessage {
|
||
|
|
int32 id = 1;
|
||
|
|
string name = 2;
|
||
|
|
bool active = 3;
|
||
|
|
}
|
||
|
|
NestedMessage single_nested = 20;
|
||
|
|
}
|