Add typedef to structures that have mrb_ prefix. Use typedef-ed type instead of struct directly.

This commit is contained in:
Masaki Muranaka
2013-03-01 14:22:42 +09:00
parent 028ac46df7
commit e4231a0a33
9 changed files with 33 additions and 33 deletions
+6 -6
View File
@@ -11,19 +11,19 @@
extern "C" {
#endif
struct mrb_data_type {
typedef struct mrb_data_type {
const char *struct_name;
void (*dfree)(mrb_state *mrb, void*);
};
} mrb_data_type;
struct RData {
MRB_OBJECT_HEADER;
struct iv_tbl *iv;
struct mrb_data_type *type;
mrb_data_type *type;
void *data;
};
struct RData *mrb_data_object_alloc(mrb_state *mrb, struct RClass* klass, void *datap, const struct mrb_data_type *type);
struct RData *mrb_data_object_alloc(mrb_state *mrb, struct RClass* klass, void *datap, const mrb_data_type *type);
#define Data_Wrap_Struct(mrb,klass,type,ptr)\
mrb_data_object_alloc(mrb,klass,ptr,type)
@@ -37,8 +37,8 @@ struct RData *mrb_data_object_alloc(mrb_state *mrb, struct RClass* klass, void *
#define RDATA(obj) ((struct RData *)((obj).value.p))
#define DATA_PTR(d) (RDATA(d)->data)
#define DATA_TYPE(d) (RDATA(d)->type)
void *mrb_get_datatype(mrb_state *mrb, mrb_value, const struct mrb_data_type*);
void *mrb_check_datatype(mrb_state *mrb, mrb_value, const struct mrb_data_type*);
void *mrb_get_datatype(mrb_state *mrb, mrb_value, const mrb_data_type*);
void *mrb_check_datatype(mrb_state *mrb, mrb_value, const mrb_data_type*);
#define Data_Get_Struct(mrb,obj,type,sval) do {\
*(void**)&sval = mrb_check_datatype(mrb, obj, type); \
} while (0)