mirror of
https://github.com/ruby/ruby.git
synced 2025-08-24 13:34:17 +02:00
![]() * Add rb_io_path and rb_io_open_descriptor. * Use rb_io_open_descriptor to create PTY objects * Rename FMODE_PREP -> FMODE_EXTERNAL and expose it FMODE_PREP I believe refers to the concept of a "pre-prepared" file, but FMODE_EXTERNAL is clearer about what the file descriptor represents and aligns with language in the IO::Buffer module. * Ensure that rb_io_open_descriptor closes the FD if it fails If FMODE_EXTERNAL is not set, then it's guaranteed that Ruby will be responsible for closing your file, eventually, if you pass it to rb_io_open_descriptor, even if it raises an exception. * Rename IS_EXTERNAL_FD -> RUBY_IO_EXTERNAL_P * Expose `rb_io_closed_p`. * Add `rb_io_mode` to get IO mode. --------- Co-authored-by: KJ Tsanaktsidis <ktsanaktsidis@zendesk.com> |
||
---|---|---|
.. | ||
depend | ||
extconf.rb | ||
README.md | ||
stringio.c | ||
stringio.gemspec |
StringIO
Pseudo IO
class from/to String
.
This library is based on MoonWolf version written in Ruby. Thanks a lot.
Differences to IO
fileno
raisesNotImplementedError
.- encoding conversion is not implemented, and ignored silently.