summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
author Treehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com> 2025-01-29 15:34:47 -0800
committer Android (Google) Code Review <android-gerrit@google.com> 2025-01-29 15:34:47 -0800
commitd1f563013dfe3a2b5f8b412b9ee19b42a36d5932 (patch)
tree0034ec6becf185191ea0c242d7ffa771de387325 /include
parent3c4af5d06901d6f33f76d4711b3515327989ca23 (diff)
parente7ffef74e0b965e4d0240bc9b3809cdc10785361 (diff)
Merge "Move external MultiTouch test into InputMapperUnitTest" into main
Diffstat (limited to 'include')
-rw-r--r--include/input/PrintTools.h15
1 files changed, 11 insertions, 4 deletions
diff --git a/include/input/PrintTools.h b/include/input/PrintTools.h
index 3470be4dce..71c215f723 100644
--- a/include/input/PrintTools.h
+++ b/include/input/PrintTools.h
@@ -19,13 +19,18 @@
#include <bitset>
#include <map>
#include <optional>
-#include <set>
+#include <ranges>
#include <sstream>
#include <string>
#include <vector>
namespace android {
+namespace internal {
+template <typename T>
+concept Container = std::ranges::range<T>;
+}
+
template <size_t N>
std::string bitsetToString(const std::bitset<N>& bitset) {
if (bitset.none()) {
@@ -72,10 +77,12 @@ inline std::string toString(const std::optional<T>& optional,
/**
* Convert a set of integral types to string.
*/
-template <typename T>
-std::string dumpSet(const std::set<T>& v, std::string (*toString)(const T&) = constToString) {
+template <internal::Container T>
+std::string dumpContainer(
+ const T& container,
+ std::string (*toString)(const std::ranges::range_value_t<T>&) = constToString) {
std::string out;
- for (const T& entry : v) {
+ for (const auto& entry : container) {
out += out.empty() ? "{" : ", ";
out += toString(entry);
}