diff options
Diffstat (limited to 'io.c')
-rw-r--r-- | io.c | 14 |
1 files changed, 14 insertions, 0 deletions
@@ -3317,6 +3317,20 @@ rb_io_fptr_finalize(rb_io_t *fptr) return 1; } +size_t rb_econv_memsize(rb_econv_t *); + +size_t +rb_io_memsize(rb_io_t *fptr) +{ + size_t size = sizeof(rb_io_t); + size += fptr->rbuf_capa; + size += fptr->wbuf_capa; + size += fptr->cbuf_capa; + if (fptr->readconv) size += rb_econv_memsize(fptr->readconv); + if (fptr->writeconv) size += rb_econv_memsize(fptr->writeconv); + return size; +} + VALUE rb_io_close(VALUE io) { |