From b7bf92d217010a1d12689fc7ed16fdc4f269fd32 Mon Sep 17 00:00:00 2001 From: Simon Marchi Date: Wed, 3 Apr 2024 22:16:13 -0400 Subject: [PATCH] cpp-common/bt2: make `ValueType` a wise enum Change-Id: I0a0b060a094022844b159cedba87de566d4cfbac Signed-off-by: Simon Marchi Reviewed-on: https://review.lttng.org/c/babeltrace/+/12246 Tested-by: jenkins Reviewed-by: Philippe Proulx --- src/cpp-common/bt2/value.hpp | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/src/cpp-common/bt2/value.hpp b/src/cpp-common/bt2/value.hpp index b5870ca3..9f7fdff5 100644 --- a/src/cpp-common/bt2/value.hpp +++ b/src/cpp-common/bt2/value.hpp @@ -16,6 +16,7 @@ #include "common/assert.h" #include "common/common.h" #include "cpp-common/bt2c/c-string-view.hpp" +#include "cpp-common/vendor/wise-enum/wise_enum.h" #include "borrowed-object-iterator.hpp" #include "borrowed-object.hpp" @@ -70,17 +71,19 @@ class CommonArrayValue; template class CommonMapValue; -enum class ValueType -{ - Null = BT_VALUE_TYPE_NULL, - Bool = BT_VALUE_TYPE_BOOL, - UnsignedInteger = BT_VALUE_TYPE_UNSIGNED_INTEGER, - SignedInteger = BT_VALUE_TYPE_SIGNED_INTEGER, - Real = BT_VALUE_TYPE_REAL, - String = BT_VALUE_TYPE_STRING, - Array = BT_VALUE_TYPE_ARRAY, - Map = BT_VALUE_TYPE_MAP, -}; +/* clang-format off */ + +WISE_ENUM_CLASS(ValueType, + (Null, BT_VALUE_TYPE_NULL), + (Bool, BT_VALUE_TYPE_BOOL), + (UnsignedInteger, BT_VALUE_TYPE_UNSIGNED_INTEGER), + (SignedInteger, BT_VALUE_TYPE_SIGNED_INTEGER), + (Real, BT_VALUE_TYPE_REAL), + (String, BT_VALUE_TYPE_STRING), + (Array, BT_VALUE_TYPE_ARRAY), + (Map, BT_VALUE_TYPE_MAP)); + +/* clang-format on */ template class CommonValueRawValueProxy final -- 2.34.1