summaryrefslogtreecommitdiffstats
path: root/docs/reference.rst
AgeCommit message (Collapse)AuthorFilesLines
2016-08-04Add inline allocation of bytes fieldsTom Roeder1-22/+27
This commit adds a new FT_INLINE allocation type that forces bytes fields to be inlined into the struct. E.g., pb_byte_t my_bytes[32]. This requires max_size for the bytes field. The FT_INLINE type is represented as a new LTYPE: FT_LTYPE_FIXED_LENGTH_BYTES. This commit also updates the documentation with FT_INLINE and FT_LTYPE_FIXED_LENGTH_BYTES. Added an AUTHORS file in apparent order of appearance in the git log history from $(git log --all).
2016-03-10Fix formatting in docsPetteri Aimonen1-1/+1
2016-03-07Some more docs updatesPetteri Aimonen1-1/+11
2016-03-07Update API reference to match headersMaxim Khitrov1-38/+32
Update typedefs and function prototypes in the API reference to match header files. Delete documentation for pb_skip_varint/pb_skip_string, which are superseded by pb_skip_field, and add pb_get_encoded_size.
2016-02-07Update pb_release docsPetteri Aimonen1-2/+2
2016-01-27Remove obsolete __BIG_ENDIAN__ compilation option.Petteri Aimonen1-4/+0
This is now handled automatically using shift operations.
2015-04-03Add basic docs for msgid functionalityPetteri Aimonen1-0/+4
2015-01-04Add int_size option for generator.Petteri Aimonen1-0/+3
This allows overriding the integer field types to e.g. uint8_t for saving RAM. Update issue 139 Status: FixedInGit
2014-12-22Add compilation option to disable struct packing.Petteri Aimonen1-0/+3
Update issue 136 Status: FixedInGit
2014-04-02Add some missing 'static' specifiersPetteri Aimonen1-4/+0
Update issue 91 Status: FixedInGit
2014-03-16Documentation updatesPetteri Aimonen1-2/+49
2013-10-29Remove the NANOPB_INTERNALS functions from public API.Petteri Aimonen1-1/+3
These have been deprecated since nanopb-0.1.6 (some since 0.1.3). Equivalent functions with better interface are available in the API. Update issue 91 Status: FixedInGit
2013-08-08Document field extensions supportPetteri Aimonen1-0/+35
Update issue 17 Status: FixedInGit
2013-08-08Document PB_SYSTEM_HEADERPetteri Aimonen1-1/+6
2013-07-16Fix formatting in documentationPetteri Aimonen1-23/+41
2013-07-06Add section in pb.h for changing compilation settings.Petteri Aimonen1-3/+7
Update issue 76 Status: FixedInGit
2013-07-06Add error message macros to API reference.Petteri Aimonen1-0/+25
2013-07-06Document the .options file usage.Petteri Aimonen1-21/+171
Also add note about the 'packed' message option being incompatible with CPUs that do not support unaligned access. Update issue 12 Status: FixedInGit Update issue 77 Status: FixedInGit
2013-04-02Change the callback function to use void**.Petteri Aimonen1-3/+7
NOTE: This change breaks backwards-compatibility by default. If you have old callback functions, you can define PB_OLD_CALLBACK_STYLE to retain the old behaviour. If you want to convert your old callbacks to new signature, you need to do the following: 1) Change decode callback argument to void **arg and encode callback argument to void * const *arg. 2) Change any reference to arg into *arg. The rationale for making the new behaviour the default is that it simplifies the common case of "allocate some memory in decode callback". Update issue 69 Status: FixedInGit
2013-03-02Update documentationPetteri Aimonen1-12/+24
2013-02-06Add compile-time option PB_BUFFER_ONLY.Petteri Aimonen1-0/+2
This allows slight optimizations if only memory buffer support (as opposed to stream callbacks) is wanted. On ARM difference is -12% execution time, -4% code size when enabled.
2012-12-06Fix small error in field callback documentation.Petteri Aimonen1-1/+1
Update issue 44 Status: FixedInGit
2012-08-26Add pb_decode_noinit and use it from pb_dec_submessage.Petteri Aimonen1-0/+10
This avoids double initialization when decoding nested submessages. Fixes an issue with submessage arrays that was present in previous version of this patch. Update issue 28 Status: FixedInGit
2012-08-26Revert "Add pb_decode_noinit and use it from pb_dec_submessage."Petteri Aimonen1-10/+0
The patch breaks default values inside submessage arrays (I think). Have to add test cases and check back. This reverts commit f1d7640fe1be0f150f604c72108ea516222c2505.
2012-08-26Add pb_decode_noinit and use it from pb_dec_submessage.Petteri Aimonen1-0/+10
This avoids double initialization when decoding nested submessages. Update issue 28 Status: FixedInGit
2012-08-24Implement error messages in the decoder side.Petteri Aimonen1-1/+3
Update issue 7 Status: Started
2012-08-24Document pb_close_string_substream.Petteri Aimonen1-1/+13
2012-08-24Reorganize the field decoder interface.Petteri Aimonen1-86/+32
This makes the field decoding functions more intuitive to use. The old interface is still present if you specify NANOPB_INTERNALS. Update issue 2 Status: FixedInGit
2012-07-01Replace PB_MANY_FIELDS with PB_FIELD_16BIT and PB_FIELD_32BIT.Petteri Aimonen1-5/+12
This allows more precise control over the memory use vs. field size.
2012-06-30Add PB_MANY_FIELDS option for supporting fields > 255.Petteri Aimonen1-1/+3
Add generator warning if this is necessary. Fixes issue #14.
2012-06-30Improve the detection of missing required fields.Petteri Aimonen1-7/+6
Now the limit of tracked fields is configurable at compile-time using PB_MAX_REQUIRED_FIELDS. Added related test and updated documentation. Fixes issue #18.
2012-06-25Fixed formatting in docsPetteri Aimonen1-2/+5
2012-06-25Documented NANOPB_INTERNALS compilation optionPetteri Aimonen1-0/+1
2012-06-25Note about __BIG_ENDIAN__ compilation optionPetteri Aimonen1-0/+6
2012-06-16Added new functions to public interface in pb_decode.h.Petteri Aimonen1-11/+36
pb_decode_tag and pb_skip_field allow manually iterating the fields in a message.
2012-03-01Refactoring the field encoder interface.Petteri Aimonen1-82/+42
Replaced the confusing pb_enc_* functions with new pb_encode_* functions that have a cleaner interface. Updated documentation. Got rid of the endian_copy stuff in pb_encode.c, instead using C casts to do it automatically. This makes the code safer and also reduces binary size by about 5%. Fixes Issue 6.
2012-01-23Improved documentation on field decoders.Petteri Aimonen1-5/+24
2011-09-14Added READMEPetteri Aimonen1-2/+2
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@976 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-09-13Fixed a bunch of bugs related to callback fields.Petteri Aimonen1-16/+38
Most importantly, callback fields in submessages were being overwritten with garbage, causing segfaults. Additionally, converted PB_LTYPE_FIXED to PB_LTYPE_FIXED32 and PB_LTYPE_FIXED64. This makes the interface a bit easier to use, and in addition runs faster. git-svn-id: https://svn.kapsi.fi/jpa/nanopb@975 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-23More unittestsPetteri Aimonen1-0/+12
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@966 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-22unittests, change to PB_LTYPE_BYTES data sizePetteri Aimonen1-2/+2
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@959 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-17ExamplePetteri Aimonen1-1/+1
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@957 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-16DocsPetteri Aimonen1-1/+45
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@956 e3a754e5-d11d-0410-8d38-ebb782a927b9
2011-08-14More documentation, small improvementsPetteri Aimonen1-0/+385
git-svn-id: https://svn.kapsi.fi/jpa/nanopb@955 e3a754e5-d11d-0410-8d38-ebb782a927b9