From cf8e0f3f4704fe20f529caa0b22ff327177bb1dd Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Fri, 27 Dec 2024 18:39:46 +0900 Subject: [PATCH] class.c: define MT_KEY_SHIFT (2) for the future --- src/class.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/class.c b/src/class.c index 2e39a560b..8bf0c45c8 100644 --- a/src/class.c +++ b/src/class.c @@ -26,16 +26,18 @@ union mt_ptr { mrb_func_t func; }; -#define MT_KEY_P(k) (((k)>>2) != 0) +#define MT_KEY_SHIFT 2 +#define MT_KEY_MASK ((1<<2)-1) +#define MT_KEY_P(k) (((k)>>MT_KEY_SHIFT) != 0) #define MT_FUNC_P 1 #define MT_NOARG_P 2 #define MT_EMPTY 0 #define MT_DELETED 1 -#define MT_KEY(sym, flags) ((sym)<<2|(flags)) +#define MT_KEY(sym, flags) ((sym)<>2) -#define MT_KEY_FLG(k) ((k)&3) +#define MT_KEY_SYM(k) ((k)>>MT_KEY_SHIFT) +#define MT_KEY_FLG(k) ((k)&MT_KEY_MASK) /* method table structure */ typedef struct mt_tbl {