Method: StringIO#string=

Defined in:
ext/stringio/stringio.c

#string=(string) ⇒ String

Changes underlying String object, the subject of IO.

Returns:

  • (String)


496
497
498
499
500
501
502
503
504
505
506
507
508
# File 'ext/stringio/stringio.c', line 496

static VALUE
strio_set_string(VALUE self, VALUE string)
{
    struct StringIO *ptr = StringIO(self);

    rb_io_taint_check(self);
    ptr->flags &= ~FMODE_READWRITE;
    StringValue(string);
    ptr->flags = OBJ_FROZEN(string) ? FMODE_READABLE : FMODE_READWRITE;
    ptr->pos = 0;
    ptr->lineno = 0;
    return ptr->string = string;
}