Files
nanopb/tests/intsizes/intsizes.proto
Petteri Aimonen 50c67ecec4 Add int_size option for generator.
This allows overriding the integer field types to e.g. uint8_t for
saving RAM.

Update issue 139
Status: FixedInGit
2015-01-04 12:02:15 +02:00

40 lines
1.5 KiB
Protocol Buffer

/* Test the integer size overriding in nanopb options.
* This allows to use 8- and 16-bit integer variables, which are not supported
* directly by Google Protobuf.
*
* The int_size setting will override the number of bits, but keep the type
* otherwise. E.g. uint32 + IS_8 => uint8_t
*/
import 'nanopb.proto';
message IntSizes {
required int32 req_int8 = 1 [(nanopb).int_size = IS_8];
required uint32 req_uint8 = 2 [(nanopb).int_size = IS_8];
required sint32 req_sint8 = 3 [(nanopb).int_size = IS_8];
required int32 req_int16 = 4 [(nanopb).int_size = IS_16];
required uint32 req_uint16 = 5 [(nanopb).int_size = IS_16];
required sint32 req_sint16 = 6 [(nanopb).int_size = IS_16];
required int32 req_int32 = 7 [(nanopb).int_size = IS_32];
required uint32 req_uint32 = 8 [(nanopb).int_size = IS_32];
required sint32 req_sint32 = 9 [(nanopb).int_size = IS_32];
required int32 req_int64 = 10 [(nanopb).int_size = IS_64];
required uint32 req_uint64 = 11 [(nanopb).int_size = IS_64];
required sint32 req_sint64 = 12 [(nanopb).int_size = IS_64];
}
message DefaultSizes {
required int32 req_int8 = 1 ;
required uint32 req_uint8 = 2 ;
required sint32 req_sint8 = 3 ;
required int32 req_int16 = 4 ;
required uint32 req_uint16 = 5 ;
required sint32 req_sint16 = 6 ;
required int32 req_int32 = 7 ;
required uint32 req_uint32 = 8 ;
required sint32 req_sint32 = 9 ;
required int64 req_int64 = 10;
required uint64 req_uint64 = 11;
required sint64 req_sint64 = 12;
}