rb_io_t Struct Reference

`#include <io.h>`

## Data Structures

struct | rb_io_enc_t

## Data Fields

int | fd
FILE * | stdio_file
int | mode
rb_pid_t | pid
int | lineno
VALUE | pathv
void(* | finalize )(struct rb_io_t *, int)
rb_io_buffer_t | wbuf
rb_io_buffer_t | rbuf
VALUE | tied_io_for_writing
struct rb_io_t::rb_io_enc_t | encs
rb_econv_t * | readconv
rb_io_buffer_t | cbuf
rb_econv_t * | writeconv
VALUE | writeconv_asciicompat
int | writeconv_pre_ecflags
VALUE | writeconv_pre_ecopts
int | writeconv_initialized
VALUE | write_lock

## Detailed Description

Definition at line 53 of file io.h.

## Field Documentation

rb_io_buffer_t rb_io_t::cbuf

Definition at line 80 of file io.h.

Referenced by appendline(), clear_readconv(), fill_cbuf(), io_getc(), io_shift_cbuf(), make_readconv(), rb_io_each_codepoint(), rb_io_memsize(), rb_io_ungetc(), and read_all().

struct rb_io_t::rb_io_enc_t rb_io_t::encs

Referenced by argf_next_argv(), argf_set_encoding(), do_writeconv(), gc_mark_children(), io_encoding_set(), io_input_encoding(), io_read_encoding(), io_shift_cbuf(), make_readconv(), make_writeconv(), mode_enc(), pipe_open(), prep_stdio(), rb_file_open_generic(), rb_io_ascii8bit_binmode(), rb_io_each_codepoint(), rb_io_external_encoding(), rb_io_init_copy(), rb_io_initialize(), rb_io_internal_encoding(), rb_io_reopen(), and rb_io_s_pipe().

int rb_io_t::fd

Definition at line 54 of file io.h.

Referenced by bsock_close_read(), bsock_close_write(), bsock_getpeername(), bsock_getsockname(), bsock_getsockopt(), bsock_local_address(), bsock_remote_address(), bsock_setsockopt(), bsock_shutdown(), check_exec_redirect_fd(), copy_stream_body(), do_writeconv(), finish_writeconv(), fptr_finalize(), get_write_fd(), io_binwrite(), io_binwrite_string(), io_bufread(), io_check_tty(), io_fflush(), io_fillbuf(), io_flush_buffer_async(), io_flush_buffer_sync(), io_fwrite(), io_getpartial(), io_nread(), io_read(), io_ready_p(), io_reopen(), io_unread(), io_wait(), ip_addr(), ip_peeraddr(), pipe_finalize(), pipe_open(), prep_io(), pty_open(), rb_file_atime(), rb_file_chmod(), rb_file_chown(), rb_file_ctime(), rb_file_flock(), rb_file_mtime(), rb_file_open_generic(), rb_file_size(), rb_io_binmode(), rb_io_check_closed(), rb_io_close(), rb_io_close_read(), rb_io_close_write(), rb_io_closed(), rb_io_ctl(), rb_io_eof(), rb_io_fileno(), rb_io_flush(), rb_io_fptr_finalize(), rb_io_getbyte(), rb_io_init_copy(), rb_io_initialize(), rb_io_inspect(), rb_io_isatty(), rb_io_read_check(), rb_io_reopen(), rb_io_rewind(), rb_io_s_pipe(), rb_io_set_nonblock(), rb_io_stat(), rb_io_stdio_file(), rb_io_sysread(), rb_io_sysseek(), rb_io_syswrite(), rb_io_write_nonblock(), rb_stat(), rb_write_error2(), remain_size(), rsock_bsock_send(), rsock_init_sock(), rsock_io_socket_addrinfo(), rsock_s_accept_nonblock(), rsock_s_recvfrom(), rsock_s_recvfrom_nonblock(), rsock_sock_listen(), select_internal(), sock_accept(), sock_bind(), sock_connect(), sock_connect_nonblock(), sock_sysaccept(), tcp_accept(), tcp_sysaccept(), udp_bind(), udp_connect(), udp_send(), and wsplit_p().

void(* rb_io_t::finalize)(struct rb_io_t *, int)

Definition at line 60 of file io.h.

Referenced by io_reopen(), pipe_open(), rb_io_fptr_cleanup(), and rb_io_init_copy().

int rb_io_t::lineno

Definition at line 58 of file io.h.

Referenced by io_reopen(), rb_io_getline_1(), rb_io_getline_fast(), rb_io_init_copy(), rb_io_lineno(), rb_io_rewind(), and rb_io_set_lineno().

int rb_io_t::mode

Definition at line 56 of file io.h.

Referenced by argf_next_argv(), bsock_close_read(), bsock_close_write(), bsock_do_not_reverse_lookup(), bsock_do_not_reverse_lookup_set(), console_dev(), do_writeconv(), fptr_finalize(), io_binwrite(), io_check_tty(), io_encoding_set(), io_fwrite(), io_reopen(), io_unread(), ip_addr(), ip_peeraddr(), pipe_open(), prep_io(), pty_open(), rb_file_flock(), rb_file_open_generic(), rb_file_size(), rb_io_ascii8bit_binmode(), rb_io_autoclose_p(), rb_io_binmode(), rb_io_binmode_p(), rb_io_check_char_readable(), rb_io_check_writable(), rb_io_close_read(), rb_io_close_write(), rb_io_ctl(), rb_io_external_encoding(), rb_io_flush(), rb_io_getbyte(), rb_io_init_copy(), rb_io_initialize(), rb_io_reopen(), rb_io_s_pipe(), rb_io_set_autoclose(), rb_io_set_sync(), rb_io_stdio_file(), rb_io_sync(), rb_io_synchronized(), rb_io_sysseek(), rsock_init_sock(), rsock_s_recvfrom(), rsock_s_recvfrom_nonblock(), and wsplit_p().

VALUE rb_io_t::pathv

Definition at line 59 of file io.h.

Referenced by bsock_getsockopt(), bsock_setsockopt(), console_dev(), fptr_finalize(), gc_mark_children(), io_fillbuf(), io_fread(), io_getpartial(), io_reopen(), io_write(), prep_io(), pty_open(), rb_file_atime(), rb_file_chmod(), rb_file_chown(), rb_file_ctime(), rb_file_flock(), rb_file_lstat(), rb_file_mtime(), rb_file_open_generic(), rb_file_path(), rb_file_size(), rb_io_close_read(), rb_io_close_write(), rb_io_ctl(), rb_io_fptr_finalize(), rb_io_init_copy(), rb_io_inspect(), rb_io_reopen(), rb_io_rewind(), rb_io_seek(), rb_io_set_nonblock(), rb_io_set_pos(), rb_io_stat(), rb_io_sysread(), rb_io_sysseek(), rb_io_syswrite(), rb_io_tell(), rb_io_write_nonblock(), and swallow().

rb_pid_t rb_io_t::pid

Definition at line 57 of file io.h.

Referenced by io_reopen(), pipe_finalize(), pipe_open(), rb_io_close(), rb_io_init_copy(), and rb_io_pid().

rb_io_buffer_t rb_io_t::rbuf

Definition at line 62 of file io.h.

Referenced by copy_stream_body(), fill_cbuf(), io_fillbuf(), io_getc(), io_ungetbyte(), io_unread(), rb_io_check_writable(), rb_io_each_byte(), rb_io_each_codepoint(), rb_io_fptr_finalize(), rb_io_getbyte(), rb_io_getline_fast(), rb_io_memsize(), rb_io_reopen(), rb_io_tell(), and read_buffered_data().

rb_econv_t* rb_io_t::readconv

Definition at line 79 of file io.h.

Referenced by clear_readconv(), fill_cbuf(), make_readconv(), rb_io_ascii8bit_binmode(), rb_io_binmode(), rb_io_memsize(), and rb_io_rewind().

FILE* rb_io_t::stdio_file

Definition at line 55 of file io.h.

Referenced by fptr_finalize(), io_binwrite(), io_reopen(), pipe_finalize(), pipe_open(), prep_stdio(), rb_io_initialize(), rb_io_reopen(), and rb_io_stdio_file().

VALUE rb_io_t::tied_io_for_writing

Definition at line 64 of file io.h.

Referenced by check_exec_redirect_fd(), console_dev(), gc_mark_children(), get_write_fd(), pipe_open(), rb_io_check_char_readable(), rb_io_close_write(), and rb_io_init_copy().

rb_io_buffer_t rb_io_t::wbuf

Definition at line 62 of file io.h.

Referenced by finish_writeconv(), fptr_finalize(), io_binwrite(), io_fflush(), io_flush_buffer_sync(), rb_io_check_char_readable(), rb_io_fptr_finalize(), rb_io_memsize(), rb_io_sysseek(), and rb_io_syswrite().

VALUE rb_io_t::write_lock

Definition at line 88 of file io.h.

Referenced by fptr_finalize(), gc_mark_children(), io_binwrite(), io_flush_buffer(), and rb_io_fptr_finalize().

rb_econv_t* rb_io_t::writeconv

Definition at line 82 of file io.h.

Referenced by clear_writeconv(), do_writeconv(), finish_writeconv(), fptr_finalize(), make_writeconv(), rb_io_ascii8bit_binmode(), rb_io_binmode(), and rb_io_memsize().

VALUE rb_io_t::writeconv_asciicompat

Definition at line 83 of file io.h.

Referenced by do_writeconv(), gc_mark_children(), and make_writeconv().

int rb_io_t::writeconv_initialized

Definition at line 86 of file io.h.

Referenced by clear_writeconv(), and make_writeconv().

int rb_io_t::writeconv_pre_ecflags

Definition at line 84 of file io.h.

Referenced by do_writeconv(), make_writeconv(), and rb_io_binmode().

VALUE rb_io_t::writeconv_pre_ecopts

Definition at line 85 of file io.h.

Referenced by do_writeconv(), gc_mark_children(), and make_writeconv().

The documentation for this struct was generated from the following file:

- include/ruby/io.h