pw_protobuf: Document the codegen-private namespace

Also, rename the private codegen namespace from pwpb_codegen_detail to
pwpb_codegen_private.

I recently got some CLs that actually were trying to use this private
namespace, which shows me that it's not sufficiently clear that users
are not meant to use them. I added some documentation, but for those who
don't read it, hopefully "private" is more recognizable than "detail".

Change-Id: Ifc4ce1cab8e03364ae5aeee2372989b4c06d6527
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/120811
Reviewed-by: Alexei Frolov <frolv@google.com>
Commit-Queue: Anqi Dong <anqid@google.com>
2 files changed
tree: 9ed2c38d75982cf615f5f13575be6c00ba21fcc9
  1. .allstar/
  2. .vscode/
  3. build_overrides/
  4. docker/
  5. docs/
  6. pw_allocator/
  7. pw_analog/
  8. pw_android_toolchain/
  9. pw_arduino_build/
  10. pw_assert/
  11. pw_assert_basic/
  12. pw_assert_log/
  13. pw_assert_tokenized/
  14. pw_assert_zephyr/
  15. pw_base64/
  16. pw_bloat/
  17. pw_blob_store/
  18. pw_bluetooth/
  19. pw_bluetooth_hci/
  20. pw_boot/
  21. pw_boot_cortex_m/
  22. pw_build/
  23. pw_build_info/
  24. pw_build_mcuxpresso/
  25. pw_bytes/
  26. pw_checksum/
  27. pw_chrono/
  28. pw_chrono_embos/
  29. pw_chrono_freertos/
  30. pw_chrono_stl/
  31. pw_chrono_threadx/
  32. pw_chrono_zephyr/
  33. pw_cli/
  34. pw_compilation_testing/
  35. pw_console/
  36. pw_containers/
  37. pw_cpu_exception/
  38. pw_cpu_exception_cortex_m/
  39. pw_crypto/
  40. pw_digital_io/
  41. pw_docgen/
  42. pw_doctor/
  43. pw_env_setup/
  44. pw_file/
  45. pw_function/
  46. pw_fuzzer/
  47. pw_hdlc/
  48. pw_hex_dump/
  49. pw_i2c/
  50. pw_i2c_mcuxpresso/
  51. pw_ide/
  52. pw_interrupt/
  53. pw_interrupt_cortex_m/
  54. pw_interrupt_zephyr/
  55. pw_intrusive_ptr/
  56. pw_kvs/
  57. pw_libc/
  58. pw_log/
  59. pw_log_android/
  60. pw_log_basic/
  61. pw_log_null/
  62. pw_log_rpc/
  63. pw_log_string/
  64. pw_log_tokenized/
  65. pw_log_zephyr/
  66. pw_malloc/
  67. pw_malloc_freelist/
  68. pw_metric/
  69. pw_minimal_cpp_stdlib/
  70. pw_module/
  71. pw_multisink/
  72. pw_package/
  73. pw_perf_test/
  74. pw_persistent_ram/
  75. pw_polyfill/
  76. pw_preprocessor/
  77. pw_presubmit/
  78. pw_protobuf/
  79. pw_protobuf_compiler/
  80. pw_random/
  81. pw_result/
  82. pw_ring_buffer/
  83. pw_router/
  84. pw_rpc/
  85. pw_rust/
  86. pw_snapshot/
  87. pw_software_update/
  88. pw_span/
  89. pw_spi/
  90. pw_status/
  91. pw_stm32cube_build/
  92. pw_stream/
  93. pw_string/
  94. pw_symbolizer/
  95. pw_sync/
  96. pw_sync_baremetal/
  97. pw_sync_embos/
  98. pw_sync_freertos/
  99. pw_sync_stl/
  100. pw_sync_threadx/
  101. pw_sync_zephyr/
  102. pw_sys_io/
  103. pw_sys_io_arduino/
  104. pw_sys_io_baremetal_lm3s6965evb/
  105. pw_sys_io_baremetal_stm32f429/
  106. pw_sys_io_emcraft_sf2/
  107. pw_sys_io_mcuxpresso/
  108. pw_sys_io_stdio/
  109. pw_sys_io_stm32cube/
  110. pw_sys_io_zephyr/
  111. pw_system/
  112. pw_target_runner/
  113. pw_thread/
  114. pw_thread_embos/
  115. pw_thread_freertos/
  116. pw_thread_stl/
  117. pw_thread_threadx/
  118. pw_tls_client/
  119. pw_tls_client_boringssl/
  120. pw_tls_client_mbedtls/
  121. pw_tokenizer/
  122. pw_tool/
  123. pw_toolchain/
  124. pw_trace/
  125. pw_trace_tokenized/
  126. pw_transfer/
  127. pw_unit_test/
  128. pw_varint/
  129. pw_watch/
  130. pw_web/
  131. pw_work_queue/
  132. seed/
  133. targets/
  134. third_party/
  135. ts/
  136. zephyr/
  137. .bazelignore
  138. .bazelrc
  139. .clang-format
  140. .clang-tidy
  141. .eslintrc.json
  142. .gitattributes
  143. .gitignore
  144. .gn
  145. .mypy.ini
  146. .prettierrc.js
  147. .pw_ide.yaml
  148. .pylintrc
  149. activate.bat
  150. Android.bp
  151. AUTHORS
  152. bootstrap.bat
  153. bootstrap.sh
  154. BUILD.bazel
  155. BUILD.gn
  156. BUILDCONFIG.gn
  157. CMakeLists.txt
  158. jest.config.ts
  159. Kconfig.zephyr
  160. LICENSE
  161. modules.gni
  162. OWNERS
  163. package-lock.json
  164. package.json
  165. PIGWEED_MODULES
  166. PW_PLUGINS
  167. README.md
  168. rollup.config.js
  169. tsconfig.json
  170. WORKSPACE
README.md

Pigweed

Pigweed is an open source collection of embedded-targeted libraries–or as we like to call them, modules. These modules are building blocks and infrastructure that enable faster and more reliable development on small-footprint MMU-less 32-bit microcontrollers like the STMicroelectronics STM32L452 or the Nordic nRF52832.

For more information please see our website: https://pigweed.dev/.

Links