summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarco Trevisan (TreviƱo) <mail@3v1n0.net>2020-08-11 02:01:57 +0200
committerPhilip Chimento <philip.chimento@gmail.com>2020-09-19 15:27:36 -0700
commit19017c304976ebb7c38fab10785b37e55792826f (patch)
treeb145add39f5f3f93918b5b24c5e56e410455bb37
parent66dfb7fb731345b25cf4353eb2118b764600a743 (diff)
downloadgjs-19017c304976ebb7c38fab10785b37e55792826f.tar.gz
arg-cache: Use switch to select the array length argument type
-rw-r--r--gi/arg-cache.cpp37
1 files changed, 20 insertions, 17 deletions
diff --git a/gi/arg-cache.cpp b/gi/arg-cache.cpp
index 2343822b..c8fa3796 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,