Changeset 439 for EcnlProtoTool/trunk/mruby-2.1.1/include/mruby/data.h
- Timestamp:
- Jul 9, 2020, 8:51:43 AM (4 years ago)
- Location:
- EcnlProtoTool/trunk/mruby-2.1.1
- Files:
-
- 1 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
EcnlProtoTool/trunk/mruby-2.1.1/include/mruby/data.h
r331 r439 1 /* 2 ** mruby/data.h - Data class1 /** 2 ** @file mruby/data.h - Data class 3 3 ** 4 4 ** See Copyright Notice in mruby.h … … 40 40 mrb_data_object_alloc(mrb,klass,ptr,type) 41 41 42 #define Data_Make_Struct(mrb,klass,strct,type,sval,data) do { \ 43 sval = mrb_malloc(mrb, sizeof(strct)); \ 44 { static const strct zero = { 0 }; *sval = zero; };\ 45 data = Data_Wrap_Struct(mrb,klass,type,sval);\ 42 #define Data_Make_Struct(mrb,klass,strct,type,sval,data_obj) do { \ 43 (data_obj) = Data_Wrap_Struct(mrb,klass,type,NULL);\ 44 (sval) = (strct *)mrb_malloc(mrb, sizeof(strct)); \ 45 { static const strct zero = { 0 }; *(sval) = zero; };\ 46 (data_obj)->data = (sval);\ 46 47 } while (0) 47 48 … … 63 64 } while (0) 64 65 65 static inlinevoid66 MRB_INLINE void 66 67 mrb_data_init(mrb_value v, void *ptr, const mrb_data_type *type) 67 68 { 68 mrb_assert(mrb_ type(v) == MRB_TT_DATA);69 mrb_assert(mrb_data_p(v)); 69 70 DATA_PTR(v) = ptr; 70 71 DATA_TYPE(v) = type;
Note:
See TracChangeset
for help on using the changeset viewer.