/* Test nanopb option parsing. * options.expected lists the patterns that are searched for in the output. */ import "nanopb.proto"; // File level options option (nanopb_fileopt).max_size = 20; message Message1 { required string filesize = 1; } // Message level options message Message2 { option (nanopb_msgopt).max_size = 30; required string msgsize = 1; } // Field level options message Message3 { required string fieldsize = 1 [(nanopb).max_size = 40]; } // Forced callback field message Message4 { required int32 int32_callback = 1 [(nanopb).type = FT_CALLBACK]; } // Short enum names enum Enum1 { option (nanopb_enumopt).long_names = false; EnumValue1 = 1; EnumValue2 = 2; } message EnumTest { required Enum1 field = 1 [default = EnumValue2]; } // Short enum names inside message message Message5 { enum Enum2 { option (nanopb_enumopt).long_names = false; EnumValue1 = 1; } required Enum2 field = 1 [default = EnumValue1]; }