summaryrefslogtreecommitdiffhomepage
path: root/src/dump.c
diff options
context:
space:
mode:
authorMiura Hideki <[email protected]>2013-11-17 16:33:39 +0900
committerMiura Hideki <[email protected]>2013-11-19 20:38:02 +0900
commit54c5b12fb7bc5fdd57326780e970ee467387f81a (patch)
treecd4d15d20ef543b5ca20f3186ea49d50d4f52129 /src/dump.c
parent2bda9652585616b49449904aad0195d8b23e58a4 (diff)
downloadmruby-54c5b12fb7bc5fdd57326780e970ee467387f81a.tar.gz
mruby-54c5b12fb7bc5fdd57326780e970ee467387f81a.zip
irep->pool struct pool -> mrb_value
Diffstat (limited to 'src/dump.c')
-rw-r--r--src/dump.c32
1 files changed, 16 insertions, 16 deletions
diff --git a/src/dump.c b/src/dump.c
index 77555f8ee..95c7d51e0 100644
--- a/src/dump.c
+++ b/src/dump.c
@@ -79,19 +79,19 @@ get_pool_block_size(mrb_state *mrb, mrb_irep *irep)
for (pool_no = 0; pool_no < irep->plen; pool_no++) {
int ai = mrb_gc_arena_save(mrb);
- switch (irep->pool[pool_no].type) {
- case IREP_TT_FIXNUM:
- str = mrb_fixnum_to_str(mrb, mrb_fixnum_value(irep->pool[pool_no].value.i), 10);
+ switch (mrb_type(irep->pool[pool_no])) {
+ case MRB_TT_FIXNUM:
+ str = mrb_fixnum_to_str(mrb, irep->pool[pool_no], 10);
size += RSTRING_LEN(str);
break;
- case IREP_TT_FLOAT:
- len = mrb_float_to_str(buf, irep->pool[pool_no].value.f);
+ case MRB_TT_FLOAT:
+ len = mrb_float_to_str(buf, mrb_float(irep->pool[pool_no]));
size += len;
break;
- case IREP_TT_STRING:
- size += irep->pool[pool_no].value.s->len;
+ case MRB_TT_STRING:
+ size += RSTRING_LEN(irep->pool[pool_no]);
break;
default:
@@ -118,23 +118,23 @@ write_pool_block(mrb_state *mrb, mrb_irep *irep, uint8_t *buf)
for (pool_no = 0; pool_no < irep->plen; pool_no++) {
int ai = mrb_gc_arena_save(mrb);
- cur += uint8_to_bin(irep->pool[pool_no].type, cur); /* data type */
+ cur += uint8_to_bin(mrb_type(irep->pool[pool_no]), cur); /* data type */
- switch (irep->pool[pool_no].type) {
- case IREP_TT_FIXNUM:
- str = mrb_fixnum_to_str(mrb, mrb_fixnum_value(irep->pool[pool_no].value.i), 10);
+ switch (mrb_type(irep->pool[pool_no])) {
+ case MRB_TT_FIXNUM:
+ str = mrb_fixnum_to_str(mrb, irep->pool[pool_no], 10);
char_ptr = RSTRING_PTR(str);
len = RSTRING_LEN(str);
break;
- case IREP_TT_FLOAT:
- len = mrb_float_to_str(char_buf, irep->pool[pool_no].value.f);
+ case MRB_TT_FLOAT:
+ len = mrb_float_to_str(char_buf, mrb_float(irep->pool[pool_no]));
char_ptr = &char_buf[0];
break;
- case IREP_TT_STRING:
- char_ptr = irep->pool[pool_no].value.s->buf;
- len = irep->pool[pool_no].value.s->len;
+ case MRB_TT_STRING:
+ char_ptr = RSTRING_PTR(irep->pool[pool_no]);
+ len = RSTRING_LEN(irep->pool[pool_no]);
break;
default: