mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
memsize.c: handle MRB_TT_RATIONAL and MRB_TT_COMPLEX.
This commit is contained in:
@@ -126,8 +126,25 @@ os_memsize_of_object(mrb_state* mrb, mrb_value obj)
|
||||
case MRB_TT_INTEGER:
|
||||
if (mrb_immediate_p(obj))
|
||||
break;
|
||||
case MRB_TT_RATIONAL:
|
||||
#if defined(MRB_USE_RATIONAL)
|
||||
#if defined(MRB_INT64) && defined(MRB_32BIT)
|
||||
size += sizeof(mrb_int)*2;
|
||||
#endif
|
||||
size += mrb_objspace_page_slot_size();
|
||||
#endif
|
||||
break;
|
||||
|
||||
case MRB_TT_COMPLEX:
|
||||
#if defined(MRB_USE_COMPLEX)
|
||||
#if defined(MRB_32BIT) && !defined(MRB_USE_FLOAT32)
|
||||
size += sizeof(mrb_float)*2;
|
||||
#endif
|
||||
size += mrb_objspace_page_slot_size();
|
||||
#endif
|
||||
break;
|
||||
case MRB_TT_DATA:
|
||||
case MRB_TT_ISTRUCT:
|
||||
case MRB_TT_ISTRUCT:
|
||||
size += mrb_objspace_page_slot_size();
|
||||
break;
|
||||
/* zero heap size types.
|
||||
|
||||
Reference in New Issue
Block a user