[gjs: 2/6] arg-cache: Use switch to select the array length argument type




commit 19017c304976ebb7c38fab10785b37e55792826f
Author: Marco Trevisan (TreviƱo) <mail 3v1n0 net>
Date:   Tue Aug 11 02:01:57 2020 +0200

    arg-cache: Use switch to select the array length argument type

 gi/arg-cache.cpp | 37 ++++++++++++++++++++-----------------
 1 file changed, 20 insertions(+), 17 deletions(-)
---
diff --git a/gi/arg-cache.cpp b/gi/arg-cache.cpp
index 2343822b1..c8fa37966 100644
--- a/gi/arg-cache.cpp
+++ b/gi/arg-cache.cpp
@@ -80,23 +80,26 @@ static void gjs_destroy_notify_callback(void* data) {
 // compiler generate good instructions in case of big endian machines)
 [[nodiscard]] static size_t gjs_g_argument_get_array_length(GITypeTag tag,
                                                             GIArgument* arg) {
-    if (tag == GI_TYPE_TAG_INT8)
-        return gjs_arg_get<int8_t>(arg);
-    if (tag == GI_TYPE_TAG_UINT8)
-        return gjs_arg_get<uint8_t>(arg);
-    if (tag == GI_TYPE_TAG_INT16)
-        return gjs_arg_get<int16_t>(arg);
-    if (tag == GI_TYPE_TAG_UINT16)
-        return gjs_arg_get<uint16_t>(arg);
-    if (tag == GI_TYPE_TAG_INT32)
-        return gjs_arg_get<int32_t>(arg);
-    if (tag == GI_TYPE_TAG_UINT32)
-        return gjs_arg_get<uint32_t>(arg);
-    if (tag == GI_TYPE_TAG_INT64)
-        return gjs_arg_get<int64_t>(arg);
-    if (tag == GI_TYPE_TAG_UINT64)
-        return gjs_arg_get<uint64_t>(arg);
-    g_assert_not_reached();
+    switch (tag) {
+        case GI_TYPE_TAG_INT8:
+            return gjs_arg_get<int8_t>(arg);
+        case GI_TYPE_TAG_UINT8:
+            return gjs_arg_get<uint8_t>(arg);
+        case GI_TYPE_TAG_INT16:
+            return gjs_arg_get<int16_t>(arg);
+        case GI_TYPE_TAG_UINT16:
+            return gjs_arg_get<uint16_t>(arg);
+        case GI_TYPE_TAG_INT32:
+            return gjs_arg_get<int32_t>(arg);
+        case GI_TYPE_TAG_UINT32:
+            return gjs_arg_get<uint32_t>(arg);
+        case GI_TYPE_TAG_INT64:
+            return gjs_arg_get<int64_t>(arg);
+        case GI_TYPE_TAG_UINT64:
+            return gjs_arg_get<uint64_t>(arg);
+        default:
+            g_assert_not_reached();
+    }
 }
 
 static void gjs_g_argument_set_array_length(GITypeTag tag, GIArgument* arg,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]