diff options
author | Petteri Aimonen <jpa@git.mail.kapsi.fi> | 2015-01-04 11:36:42 +0200 |
---|---|---|
committer | Petteri Aimonen <jpa@git.mail.kapsi.fi> | 2015-01-04 12:02:15 +0200 |
commit | 50c67ecec4895f65ba684e4b46b4b70980a5be6a (patch) | |
tree | 650cea85ca6c544bc6c3026c670cea63057bf721 /generator/proto/nanopb.proto | |
parent | b0d31468da7f644684be897cef5b0602ca10af0f (diff) |
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
Diffstat (limited to 'generator/proto/nanopb.proto')
-rw-r--r-- | generator/proto/nanopb.proto | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/generator/proto/nanopb.proto b/generator/proto/nanopb.proto index 0716be4b..1bde5967 100644 --- a/generator/proto/nanopb.proto +++ b/generator/proto/nanopb.proto @@ -18,6 +18,14 @@ enum FieldType { FT_IGNORE = 3; // Ignore the field completely. } +enum IntSize { + IS_DEFAULT = 0; // Default, 32/64bit based on type in .proto + IS_8 = 1; + IS_16 = 2; + IS_32 = 3; + IS_64 = 4; +} + // This is the inner options message, which basically defines options for // a field. When it is used in message or file scope, it applies to all // fields. @@ -28,6 +36,10 @@ message NanoPBOptions { // Allocated number of entries in arrays ('repeated' fields) optional int32 max_count = 2; + // Size of integer fields. Can save some memory if you don't need + // full 32 bits for the value. + optional IntSize int_size = 7 [default = IS_DEFAULT]; + // Force type of field (callback or static allocation) optional FieldType type = 3 [default = FT_DEFAULT]; |