added MOO_OBJ_GET_XXX_SLOT() macros

This commit is contained in:
hyunghwan.chung
2017-01-12 17:48:04 +00:00
parent 750f529201
commit 79198df35b
3 changed files with 23 additions and 14 deletions

View File

@ -413,6 +413,12 @@ struct moo_obj_word_t
moo_oow_t slot[1];
};
#define MOO_OBJ_GET_OOP_SLOT(oop) (((moo_oop_oop_t)(oop))->slot)
#define MOO_OBJ_GET_CHAR_SLOT(oop) (((moo_oop_char_t)(oop))->slot)
#define MOO_OBJ_GET_BYTE_SLOT(oop) (((moo_oop_byte_t)(oop))->slot)
#define MOO_OBJ_GET_HALFWORD_SLOT(oop) (((moo_oop_halfword_t)(oop))->slot)
#define MOO_OBJ_GET_WORD_SLOT(oop) (((moo_oop_word_t)(oop))->slot)
typedef struct moo_trailer_t moo_trailer_t;
struct moo_trailer_t
{
@ -420,6 +426,7 @@ struct moo_trailer_t
moo_oob_t slot[1];
};
#define MOO_SET_NAMED_INSTVARS 2
typedef struct moo_set_t moo_set_t;
typedef struct moo_set_t* moo_oop_set_t;