diff options
Diffstat (limited to 'src/honeysuckle.h')
-rw-r--r-- | src/honeysuckle.h | 149 |
1 files changed, 89 insertions, 60 deletions
diff --git a/src/honeysuckle.h b/src/honeysuckle.h index 69c29a3..f215528 100644 --- a/src/honeysuckle.h +++ b/src/honeysuckle.h @@ -142,190 +142,219 @@ struct hs_tbl_entry { .value_type=HS_NUM, .value.number=v } #define hs_int_str(k, v) \ { .key_type=HS_INT, .key.integer=k, \ - HS_STR, .value.string=v } + .value_type=HS_STR, .value.string=v } #define hs_int_tbl(k, v) \ { .key_type=HS_INT, .key.integer=k, \ - HS_TBL, .value.stack_index=v } + .value_type=HS_TBL, .value.stack_index=v } #define hs_int_func(k, v) \ { .key_type=HS_INT, .key.integer=k, \ - HS_FUNC, .value.stack_index=v } + .value_type=HS_FUNC, .value.stack_index=v } #define hs_int_cfunc(k, v) \ { .key_type=HS_INT, .key.integer=k, \ - HS_CFUNC, .value.function=v } + .value_type=HS_CFUNC, .value.function=v } #define hs_int_user(k, v) \ { .key_type=HS_INT, .key.integer=k, \ - HS_USER, .value.stack_index=v } + .value_type=HS_USER, .value.stack_index=v } #define hs_int_light(k, v) \ { .key_type=HS_INT, .key.integer=k, \ - HS_LIGHT, .value.userdata=v } + .value_type=HS_LIGHT, .value.userdata=v } #define hs_num_bool(k, v) \ { .key_type=HS_NUM, .key.number=k, \ - HS_BOOL, .value.boolean=v } + .value_type=HS_BOOL, .value.boolean=v } #define hs_num_int(k, v) \ { .key_type=HS_NUM, .key.number=k, \ - HS_INT, .value.integer=v } + .value_type=HS_INT, .value.integer=v } #define hs_num_num(k, v) \ { .key_type=HS_NUM, .key.number=k, \ - HS_NUM, .value.number=v } + .value_type=HS_NUM, .value.number=v } #define hs_num_str(k, v) \ { .key_type=HS_NUM, .key.number=k, \ - HS_STR, .value.string=v } + .value_type=HS_STR, .value.string=v } #define hs_num_tbl(k, v) \ { .key_type=HS_NUM, .key.number=k, \ - HS_TBL, .value.stack_index=v } + .value_type=HS_TBL, .value.stack_index=v } #define hs_num_func(k, v) \ { .key_type=HS_NUM, .key.number=k, \ - HS_FUNC, .value.stack_index=v } + .value_type=HS_FUNC, .value.stack_index=v } #define hs_num_cfunc(k, v) \ { .key_type=HS_NUM, .key.number=k, \ - HS_CFUNC, .value.function=v } + .value_type=HS_CFUNC, .value.function=v } #define hs_num_user(k, v) \ { .key_type=HS_NUM, .key.number=k, \ - HS_USER, .value.stack_index=v } + .value_type=HS_USER, .value.stack_index=v } #define hs_num_light(k, v) \ { .key_type=HS_NUM, .key.number=k, \ - HS_LIGHT, .value.userdata=v } + .value_type=HS_LIGHT, .value.userdata=v } + +#define hs_str_bool(k, v) \ + { .key_type=HS_STR, .key.string=k, \ + .value_type=HS_BOOL, .value.boolean=v } +#define hs_str_int(k, v) \ + { .key_type=HS_STR, .key.string=k, \ + .value_type=HS_INT, .value.integer=v } +#define hs_str_num(k, v) \ + { .key_type=HS_STR, .key.string=k, \ + .value_type=HS_NUM, .value.number=v } +#define hs_str_str(k, v) \ + { .key_type=HS_STR, .key.string=k, \ + .value_type=HS_STR, .value.string=v } +#define hs_str_tbl(k, v) \ + { .key_type=HS_STR, .key.string=k, \ + .value_type=HS_TBL, .value.stack_index=v } +#define hs_str_func(k, v) \ + { .key_type=HS_STR, .key.string=k, \ + .value_type=HS_FUNC, .value.stack_index=v } +#define hs_str_cfunc(k, v) \ + { .key_type=HS_STR, .key.string=k, \ + .value_type=HS_CFUNC, .value.function=v } +#define hs_str_user(k, v) \ + { .key_type=HS_STR, .key.string=k, \ + .value_type=HS_USER, .value.stack_index=v } +#define hs_str_light(k, v) \ + { .key_type=HS_STR, .key.string=k, \ + .value_type=HS_LIGHT, .value.userdata=v } + #define hs_tbl_bool(k, v) \ { .key_type=HS_TBL, .key.stack_index=k, \ - HS_BOOL, .value.boolean=v } + .value_type=HS_BOOL, .value.boolean=v } #define hs_tbl_int(k, v) \ { .key_type=HS_TBL, .key.stack_index=k, \ - HS_INT, .value.integer=v } + .value_type=HS_INT, .value.integer=v } #define hs_tbl_num(k, v) \ { .key_type=HS_TBL, .key.stack_index=k, \ - HS_NUM, .value.number=v } + .value_type=HS_NUM, .value.number=v } #define hs_tbl_str(k, v) \ { .key_type=HS_TBL, .key.stack_index=k, \ - HS_STR, .value.string=v } + .value_type=HS_STR, .value.string=v } #define hs_tbl_tbl(k, v) \ { .key_type=HS_TBL, .key.stack_index=k, \ - HS_TBL, .value.stack_index=v } + .value_type=HS_TBL, .value.stack_index=v } #define hs_tbl_func(k, v) \ { .key_type=HS_TBL, .key.stack_index=k, \ - HS_FUNC, .value.stack_index=v } + .value_type=HS_FUNC, .value.stack_index=v } #define hs_tbl_cfunc(k, v) \ { .key_type=HS_TBL, .key.stack_index=k, \ - HS_CFUNC, .value.function=v } + .value_type=HS_CFUNC, .value.function=v } #define hs_tbl_user(k, v) \ { .key_type=HS_TBL, .key.stack_index=k, \ - HS_USER, .value.stack_index=v } + .value_type=HS_USER, .value.stack_index=v } #define hs_tbl_light(k, v) \ { .key_type=HS_TBL, .key.stack_index=k, \ - HS_LIGHT, .value.userdata=v } + .value_type=HS_LIGHT, .value.userdata=v } #define hs_func_bool(k, v) \ { .key_type=HS_FUNC, .key.stack_index=k, \ - HS_BOOL, .value.boolean=v } + .value_type=HS_BOOL, .value.boolean=v } #define hs_func_int(k, v) \ { .key_type=HS_FUNC, .key.stack_index=k, \ - HS_INT, .value.integer=v } + .value_type=HS_INT, .value.integer=v } #define hs_func_num(k, v) \ { .key_type=HS_FUNC, .key.stack_index=k, \ - HS_NUM, .value.number=v } + .value_type=HS_NUM, .value.number=v } #define hs_func_str(k, v) \ { .key_type=HS_FUNC, .key.stack_index=k, \ - HS_STR, .value.string=v } + .value_type=HS_STR, .value.string=v } #define hs_func_tbl(k, v) \ { .key_type=HS_FUNC, .key.stack_index=k, \ - HS_TBL, .value.stack_index=v } + .value_type=HS_TBL, .value.stack_index=v } #define hs_func_func(k, v) \ { .key_type=HS_FUNC, .key.stack_index=k, \ - HS_FUNC, .value.stack_index=v } + .value_type=HS_FUNC, .value.stack_index=v } #define hs_func_cfunc(k, v) \ { .key_type=HS_FUNC, .key.stack_index=k, \ - HS_CFUNC, .value.function=v } + .value_type=HS_CFUNC, .value.function=v } #define hs_func_user(k, v) \ { .key_type=HS_FUNC, .key.stack_index=k, \ - HS_USER, .value.stack_index=v } + .value_type=HS_USER, .value.stack_index=v } #define hs_func_light(k, v) \ { .key_type=HS_FUNC, .key.stack_index=k, \ - HS_LIGHT, .value.userdata=v } + .value_type=HS_LIGHT, .value.userdata=v } #define hs_cfunc_bool(k, v) \ { .key_type=HS_CFUNC, .key.function=k, \ - HS_BOOL, .value.boolean=v } + .value_type=HS_BOOL, .value.boolean=v } #define hs_cfunc_int(k, v) \ { .key_type=HS_CFUNC, .key.function=k, \ - HS_INT, .value.integer=v } + .value_type=HS_INT, .value.integer=v } #define hs_cfunc_num(k, v) \ { .key_type=HS_CFUNC, .key.function=k, \ - HS_NUM, .value.number=v } + .value_type=HS_NUM, .value.number=v } #define hs_cfunc_str(k, v) \ { .key_type=HS_CFUNC, .key.function=k, \ - HS_STR, .value.string=v } + .value_type=HS_STR, .value.string=v } #define hs_cfunc_tbl(k, v) \ { .key_type=HS_CFUNC, .key.function=k, \ - HS_TBL, .value.stack_index=v } + .value_type=HS_TBL, .value.stack_index=v } #define hs_cfunc_func(k, v) \ { .key_type=HS_CFUNC, .key.function=k, \ - HS_FUNC, .value.stack_index=v } + .value_type=HS_FUNC, .value.stack_index=v } #define hs_cfunc_cfunc(k, v) \ { .key_type=HS_CFUNC, .key.function=k, \ - HS_CFUNC, .value.function=v } + .value_type=HS_CFUNC, .value.function=v } #define hs_cfunc_user(k, v) \ { .key_type=HS_CFUNC, .key.function=k, \ - HS_USER, .value.stack_index=v } + .value_type=HS_USER, .value.stack_index=v } #define hs_cfunc_light(k, v) \ { .key_type=HS_CFUNC, .key.function=k, \ - HS_LIGHT, .value.userdata=v } + .value_type=HS_LIGHT, .value.userdata=v } #define hs_user_bool(k, v) \ { .key_type=HS_USER, .key.stack_index=k, \ - HS_BOOL, .value.boolean=v } + .value_type=HS_BOOL, .value.boolean=v } #define hs_user_int(k, v) \ { .key_type=HS_USER, .key.stack_index=k, \ - HS_INT, .value.integer=v } + .value_type=HS_INT, .value.integer=v } #define hs_user_num(k, v) \ { .key_type=HS_USER, .key.stack_index=k, \ - HS_NUM, .value.number=v } + .value_type=HS_NUM, .value.number=v } #define hs_user_str(k, v) \ { .key_type=HS_USER, .key.stack_index=k, \ - HS_STR, .value.string=v } + .value_type=HS_STR, .value.string=v } #define hs_user_tbl(k, v) \ { .key_type=HS_USER, .key.stack_index=k, \ - HS_TBL, .value.stack_index=v } + .value_type=HS_TBL, .value.stack_index=v } #define hs_user_func(k, v) \ { .key_type=HS_USER, .key.stack_index=k, \ - HS_FUNC, .value.stack_index=v } + .value_type=HS_FUNC, .value.stack_index=v } #define hs_user_cfunc(k, v) \ { .key_type=HS_USER, .key.stack_index=k, \ - HS_CFUNC, .value.function=v } + .value_type=HS_CFUNC, .value.function=v } #define hs_user_user(k, v) \ { .key_type=HS_USER, .key.stack_index=k, \ - HS_USER, .value.stack_index=v } + .value_type=HS_USER, .value.stack_index=v } #define hs_user_light(k, v) \ { .key_type=HS_USER, .key.stack_index=k, \ - HS_LIGHT, .value.userdata=v } + .value_type=HS_LIGHT, .value.userdata=v } #define hs_light_bool(k, v) \ { .key_type=HS_LIGHT, .key.userdata=k, \ - HS_BOOL, .value.boolean=v } + .value_type=HS_BOOL, .value.boolean=v } #define hs_light_int(k, v) \ { .key_type=HS_LIGHT, .key.userdata=k, \ - HS_INT, .value.integer=v } + .value_type=HS_INT, .value.integer=v } #define hs_light_num(k, v) \ { .key_type=HS_LIGHT, .key.userdata=k, \ - HS_NUM, .value.number=v } + .value_type=HS_NUM, .value.number=v } #define hs_light_str(k, v) \ { .key_type=HS_LIGHT, .key.userdata=k, \ - HS_STR, .value.string=v } + .value_type=HS_STR, .value.string=v } #define hs_light_tbl(k, v) \ { .key_type=HS_LIGHT, .key.userdata=k, \ - HS_TBL, .value.stack_index=v } + .value_type=HS_TBL, .value.stack_index=v } #define hs_light_func(k, v) \ { .key_type=HS_LIGHT, .key.userdata=k, \ - HS_FUNC, .value.stack_index=v } + .value_type=HS_FUNC, .value.stack_index=v } #define hs_light_cfunc(k, v) \ { .key_type=HS_LIGHT, .key.userdata=k, \ - HS_CFUNC, .value.function=v } + .value_type=HS_CFUNC, .value.function=v } #define hs_light_user(k, v) \ { .key_type=HS_LIGHT, .key.userdata=k, \ - HS_USER, .value.stack_index=v } + .value_type=HS_USER, .value.stack_index=v } #define hs_light_light(k, v) \ { .key_type=HS_LIGHT, .key.userdata=k, \ - HS_LIGHT, .value.userdata=v } + .value_type=HS_LIGHT, .value.userdata=v } int hs_create_table_(lua_State *L, int n_elements, struct hs_tbl_entry *elements); |