├── .github └── workflows │ ├── ci.yaml │ └── deploy-platformio.yaml ├── .gitignore ├── CMakeLists.txt ├── LICENSE ├── README.md ├── cmake └── CPM.cmake ├── examples ├── CMakeLists.txt └── complex │ ├── CMakeLists.txt │ ├── complex.options │ ├── complex.proto │ ├── converters.hpp │ ├── main.cpp │ └── models.hpp ├── library.json ├── nanopb_cpp.cpp ├── nanopb_cpp.h └── test ├── CMakeLists.txt ├── cmake └── nanopb_cpp_tests.cmake ├── common ├── inner_message.hpp ├── inner_message.proto ├── simple_enum.hpp ├── simple_enum.proto ├── tests_common.h └── unit_test.h └── tests ├── array ├── CMakeLists.txt ├── array.cpp └── array.proto ├── bytes ├── CMakeLists.txt ├── bytes.cpp └── bytes.proto ├── enum ├── CMakeLists.txt ├── enum.cpp └── enum.proto ├── inner_callback ├── CMakeLists.txt ├── inner_callback.cpp ├── inner_callback.options └── inner_callback.proto ├── map ├── CMakeLists.txt ├── map.cpp └── map.proto ├── scalar ├── CMakeLists.txt └── scalar.cpp ├── string ├── CMakeLists.txt ├── string.cpp ├── string.proto ├── string_common.hpp └── string_decode_mem_buffer.cpp └── union ├── CMakeLists.txt ├── container.hpp ├── container.options ├── container.proto ├── converter.hpp ├── inner_messages.hpp ├── inner_messages.proto └── union.cpp /.github/workflows/ci.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/.github/workflows/ci.yaml -------------------------------------------------------------------------------- /.github/workflows/deploy-platformio.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/.github/workflows/deploy-platformio.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/.gitignore -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/CMakeLists.txt -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/README.md -------------------------------------------------------------------------------- /cmake/CPM.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/cmake/CPM.cmake -------------------------------------------------------------------------------- /examples/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | add_subdirectory(complex) -------------------------------------------------------------------------------- /examples/complex/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/examples/complex/CMakeLists.txt -------------------------------------------------------------------------------- /examples/complex/complex.options: -------------------------------------------------------------------------------- 1 | * long_names:false 2 | PROTO.Person submsg_callback : true -------------------------------------------------------------------------------- /examples/complex/complex.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/examples/complex/complex.proto -------------------------------------------------------------------------------- /examples/complex/converters.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/examples/complex/converters.hpp -------------------------------------------------------------------------------- /examples/complex/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/examples/complex/main.cpp -------------------------------------------------------------------------------- /examples/complex/models.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/examples/complex/models.hpp -------------------------------------------------------------------------------- /library.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/library.json -------------------------------------------------------------------------------- /nanopb_cpp.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/nanopb_cpp.cpp -------------------------------------------------------------------------------- /nanopb_cpp.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/nanopb_cpp.h -------------------------------------------------------------------------------- /test/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/CMakeLists.txt -------------------------------------------------------------------------------- /test/cmake/nanopb_cpp_tests.cmake: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/cmake/nanopb_cpp_tests.cmake -------------------------------------------------------------------------------- /test/common/inner_message.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/common/inner_message.hpp -------------------------------------------------------------------------------- /test/common/inner_message.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/common/inner_message.proto -------------------------------------------------------------------------------- /test/common/simple_enum.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/common/simple_enum.hpp -------------------------------------------------------------------------------- /test/common/simple_enum.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/common/simple_enum.proto -------------------------------------------------------------------------------- /test/common/tests_common.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/common/tests_common.h -------------------------------------------------------------------------------- /test/common/unit_test.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/common/unit_test.h -------------------------------------------------------------------------------- /test/tests/array/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/array/CMakeLists.txt -------------------------------------------------------------------------------- /test/tests/array/array.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/array/array.cpp -------------------------------------------------------------------------------- /test/tests/array/array.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/array/array.proto -------------------------------------------------------------------------------- /test/tests/bytes/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/bytes/CMakeLists.txt -------------------------------------------------------------------------------- /test/tests/bytes/bytes.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/bytes/bytes.cpp -------------------------------------------------------------------------------- /test/tests/bytes/bytes.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/bytes/bytes.proto -------------------------------------------------------------------------------- /test/tests/enum/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/enum/CMakeLists.txt -------------------------------------------------------------------------------- /test/tests/enum/enum.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/enum/enum.cpp -------------------------------------------------------------------------------- /test/tests/enum/enum.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/enum/enum.proto -------------------------------------------------------------------------------- /test/tests/inner_callback/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/inner_callback/CMakeLists.txt -------------------------------------------------------------------------------- /test/tests/inner_callback/inner_callback.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/inner_callback/inner_callback.cpp -------------------------------------------------------------------------------- /test/tests/inner_callback/inner_callback.options: -------------------------------------------------------------------------------- 1 | PROTO.TestMessage.inner type:FT_CALLBACK -------------------------------------------------------------------------------- /test/tests/inner_callback/inner_callback.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/inner_callback/inner_callback.proto -------------------------------------------------------------------------------- /test/tests/map/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/map/CMakeLists.txt -------------------------------------------------------------------------------- /test/tests/map/map.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/map/map.cpp -------------------------------------------------------------------------------- /test/tests/map/map.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/map/map.proto -------------------------------------------------------------------------------- /test/tests/scalar/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/scalar/CMakeLists.txt -------------------------------------------------------------------------------- /test/tests/scalar/scalar.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/scalar/scalar.cpp -------------------------------------------------------------------------------- /test/tests/string/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/string/CMakeLists.txt -------------------------------------------------------------------------------- /test/tests/string/string.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/string/string.cpp -------------------------------------------------------------------------------- /test/tests/string/string.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/string/string.proto -------------------------------------------------------------------------------- /test/tests/string/string_common.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/string/string_common.hpp -------------------------------------------------------------------------------- /test/tests/string/string_decode_mem_buffer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/string/string_decode_mem_buffer.cpp -------------------------------------------------------------------------------- /test/tests/union/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/union/CMakeLists.txt -------------------------------------------------------------------------------- /test/tests/union/container.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/union/container.hpp -------------------------------------------------------------------------------- /test/tests/union/container.options: -------------------------------------------------------------------------------- 1 | PROTO.UnionContainer submsg_callback : true -------------------------------------------------------------------------------- /test/tests/union/container.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/union/container.proto -------------------------------------------------------------------------------- /test/tests/union/converter.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/union/converter.hpp -------------------------------------------------------------------------------- /test/tests/union/inner_messages.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/union/inner_messages.hpp -------------------------------------------------------------------------------- /test/tests/union/inner_messages.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/union/inner_messages.proto -------------------------------------------------------------------------------- /test/tests/union/union.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanopb/nanopb_cpp/HEAD/test/tests/union/union.cpp --------------------------------------------------------------------------------