commit | 1b338eb8c57d689e64ac894e4ec7871b7719630f | [log] [tgz] |
---|---|---|
author | Wyatt Hepler <hepler@google.com> | Mon Jun 13 11:50:30 2022 -0700 |
committer | CQ Bot Account <pigweed-scoped@luci-project-accounts.iam.gserviceaccount.com> | Thu Jun 16 20:27:06 2022 +0000 |
tree | fc86f4153a1cde09315909fd2e5606df479a5d85 | |
parent | 92be6f4430fec6734b7bee7de23523508cb859bf [diff] |
pw_span: Introduce pw::span - pw::span is identical to Pigweed's polyfilled std::span, but in a different namespace. Implicit converions between std::span and pw::span are supported inherently. pw::span and std::span are maintained as separate classes, with shared code in a .inc file. This is done instead of aliasing since C++17 does not support class template argument decuction with aliases. Also, it is simpler to have separate implementations to avoid circular dependencies while migrating code to pw::span. - Add DEFINES to the pw_add_test() CMake function to support defining preprocessor macros for the pw_span test. - Move '.inc' and '.inl' extensions from CPP_HEADER_EXTS to CPP_SOURCE_EXTS, since these should be treated like sources not headers (no include guards). Bug: b/235237667 Change-Id: I4d76fb373cdaa4d3a5d72a0537bea492b5c06814 Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/98160 Commit-Queue: Wyatt Hepler <hepler@google.com> Pigweed-Auto-Submit: Wyatt Hepler <hepler@google.com> Reviewed-by: Ted Pudlik <tpudlik@google.com>
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/