llvm-project/libc/test/utils/CPP
Guillaume Chatelet fa404ae43a [libc] Enhance ArrayRef + unittests
This patch mostly adds unittests for `ArrayRef` and `MutableArrayRef`, additionnaly:
 - We mimic the behavior of `std::vector` and disallow CV qualified type (`ArrayRef<const X>` is not allowed).
   This is to make sure that the type traits are always valid (e.g. `value_type`, `pointer`, ...).
 - In the previous implementation `ArrayRef` would define `value_type` as `const T` but this is not correct, it should be `T` for both `MutableArrayRef` and `ArrayRef`.
 - We add the `equals` method to ease testing,
 - We define the constructor taking an `Array` outside of the base implementation to ensure we match `const Array<T>&` and not `Array<const T>&` in the case of `ArrayRef`.

Differential Revision: https://reviews.llvm.org/D100732
2021-04-21 13:25:24 +00:00
..
CMakeLists.txt [libc] Enhance ArrayRef + unittests 2021-04-21 13:25:24 +00:00
arrayref_test.cpp [libc] Enhance ArrayRef + unittests 2021-04-21 13:25:24 +00:00
bitset_test.cpp
stringview_test.cpp [libc] Add a standalone flavor of an equivalent of std::string_view. 2021-02-23 15:40:26 -08:00