mruby-io/io.c: remove mrb_ prefix from function names

This commit is contained in:
Yukihiro "Matz" Matsumoto
2022-12-28 11:30:15 +09:00
parent 0172388aa2
commit aa3005da02
+107 -107
View File
@@ -67,12 +67,12 @@ typedef mrb_int pid_t;
#define OPEN_READABLE_P(f) ((mrb_bool)(OPEN_RDONLY_P(f) || OPEN_RDWR_P(f)))
#define OPEN_WRITABLE_P(f) ((mrb_bool)(OPEN_WRONLY_P(f) || OPEN_RDWR_P(f)))
static void mrb_io_free(mrb_state *mrb, void *ptr);
struct mrb_data_type mrb_io_type = { "IO", mrb_io_free };
static void io_free(mrb_state *mrb, void *ptr);
struct mrb_data_type mrb_io_type = { "IO", io_free };
static int mrb_io_modestr_to_flags(mrb_state *mrb, const char *modestr);
static int mrb_io_mode_to_flags(mrb_state *mrb, mrb_value mode);
static int io_modestr_to_flags(mrb_state *mrb, const char *modestr);
static int io_mode_to_flags(mrb_state *mrb, mrb_value mode);
static void fptr_finalize(mrb_state *mrb, struct mrb_io *fptr, int quiet);
static struct mrb_io*
@@ -112,7 +112,7 @@ io_set_process_status(mrb_state *mrb, pid_t pid, int status)
}
static int
mrb_io_modestr_to_flags(mrb_state *mrb, const char *mode)
io_modestr_to_flags(mrb_state *mrb, const char *mode)
{
int flags;
const char *m = mode;
@@ -153,13 +153,13 @@ mrb_io_modestr_to_flags(mrb_state *mrb, const char *mode)
}
static int
mrb_io_mode_to_flags(mrb_state *mrb, mrb_value mode)
io_mode_to_flags(mrb_state *mrb, mrb_value mode)
{
if (mrb_nil_p(mode)) {
return mrb_io_modestr_to_flags(mrb, "r");
return io_modestr_to_flags(mrb, "r");
}
else if (mrb_string_p(mode)) {
return mrb_io_modestr_to_flags(mrb, RSTRING_CSTR(mrb, mode));
return io_modestr_to_flags(mrb, RSTRING_CSTR(mrb, mode));
}
else {
int flags = 0;
@@ -222,7 +222,7 @@ mrb_io_mode_to_flags(mrb_state *mrb, mrb_value mode)
}
static void
mrb_fd_cloexec(mrb_state *mrb, int fd)
io_fd_cloexec(mrb_state *mrb, int fd)
{
#if defined(F_GETFD) && defined(F_SETFD) && defined(FD_CLOEXEC)
int flags, flags2;
@@ -247,33 +247,33 @@ mrb_fd_cloexec(mrb_state *mrb, int fd)
#if !defined(_WIN32) && !(defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE)
static int
mrb_cloexec_pipe(mrb_state *mrb, int fildes[2])
io_cloexec_pipe(mrb_state *mrb, int fildes[2])
{
int ret;
ret = pipe(fildes);
if (ret == -1)
return -1;
mrb_fd_cloexec(mrb, fildes[0]);
mrb_fd_cloexec(mrb, fildes[1]);
io_fd_cloexec(mrb, fildes[0]);
io_fd_cloexec(mrb, fildes[1]);
return ret;
}
static int
mrb_pipe(mrb_state *mrb, int pipes[2])
io_pipe(mrb_state *mrb, int pipes[2])
{
int ret;
ret = mrb_cloexec_pipe(mrb, pipes);
ret = io_cloexec_pipe(mrb, pipes);
if (ret == -1) {
if (errno == EMFILE || errno == ENFILE) {
mrb_garbage_collect(mrb);
ret = mrb_cloexec_pipe(mrb, pipes);
ret = io_cloexec_pipe(mrb, pipes);
}
}
return ret;
}
static int
mrb_proc_exec(const char *pname)
io_process_exec(const char *pname)
{
const char *s;
s = pname;
@@ -292,7 +292,7 @@ mrb_proc_exec(const char *pname)
#endif
static void
mrb_io_free(mrb_state *mrb, void *ptr)
io_free(mrb_state *mrb, void *ptr)
{
struct mrb_io *io = (struct mrb_io*)ptr;
if (io != NULL) {
@@ -302,7 +302,7 @@ mrb_io_free(mrb_state *mrb, void *ptr)
}
static struct mrb_io *
mrb_io_alloc(mrb_state *mrb)
io_alloc(mrb_state *mrb)
{
struct mrb_io *fptr;
@@ -322,7 +322,7 @@ mrb_io_alloc(mrb_state *mrb)
#endif
#if defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE
# define mrb_io_s_popen mrb_notimplement_m
# define io_s_popen mrb_notimplement_m
#else
static int
option_to_fd(mrb_state *mrb, mrb_value v)
@@ -343,7 +343,7 @@ option_to_fd(mrb_state *mrb, mrb_value v)
}
static mrb_value
mrb_io_s_popen_args(mrb_state *mrb, mrb_value klass,
io_s_popen_args(mrb_state *mrb, mrb_value klass,
const char **cmd, int *flags, int *doexec,
int *opt_in, int *opt_out, int *opt_err)
{
@@ -359,7 +359,7 @@ mrb_io_s_popen_args(mrb_state *mrb, mrb_value klass,
mrb_get_args(mrb, "zo:", cmd, &mode, &kw);
*flags = mrb_io_mode_to_flags(mrb, mode);
*flags = io_mode_to_flags(mrb, mode);
*doexec = (strcmp("-", *cmd) != 0);
*opt_in = option_to_fd(mrb, kv.opt_in);
*opt_out = option_to_fd(mrb, kv.opt_out);
@@ -370,7 +370,7 @@ mrb_io_s_popen_args(mrb_state *mrb, mrb_value klass,
#ifdef _WIN32
static mrb_value
mrb_io_s_popen(mrb_state *mrb, mrb_value klass)
io_s_popen(mrb_state *mrb, mrb_value klass)
{
mrb_value io;
int doexec;
@@ -392,8 +392,8 @@ mrb_io_s_popen(mrb_state *mrb, mrb_value klass)
ofd[1] = INVALID_HANDLE_VALUE;
mrb->c->ci->mid = 0;
io = mrb_io_s_popen_args(mrb, klass, &cmd, &flags, &doexec,
&opt_in, &opt_out, &opt_err);
io = io_s_popen_args(mrb, klass, &cmd, &flags, &doexec,
&opt_in, &opt_out, &opt_err);
saAttr.nLength = sizeof(SECURITY_ATTRIBUTES);
saAttr.bInheritHandle = TRUE;
@@ -444,7 +444,7 @@ mrb_io_s_popen(mrb_state *mrb, mrb_value klass)
mrb_iv_set(mrb, io, MRB_IVSYM(buf), mrb_str_new_cstr(mrb, ""));
fptr = mrb_io_alloc(mrb);
fptr = io_alloc(mrb);
fptr->fd = _open_osfhandle((intptr_t)ofd[0], 0);
fptr->fd2 = _open_osfhandle((intptr_t)ifd[1], 0);
fptr->pid = pid;
@@ -458,7 +458,7 @@ mrb_io_s_popen(mrb_state *mrb, mrb_value klass)
}
#else
static mrb_value
mrb_io_s_popen(mrb_state *mrb, mrb_value klass)
io_s_popen(mrb_state *mrb, mrb_value klass)
{
mrb_value io, result;
int doexec;
@@ -472,15 +472,15 @@ mrb_io_s_popen(mrb_state *mrb, mrb_value klass)
int saved_errno;
mrb->c->ci->mid = 0;
io = mrb_io_s_popen_args(mrb, klass, &cmd, &flags, &doexec,
&opt_in, &opt_out, &opt_err);
io = io_s_popen_args(mrb, klass, &cmd, &flags, &doexec,
&opt_in, &opt_out, &opt_err);
if (OPEN_READABLE_P(flags)) {
if (pipe(pr) == -1) {
mrb_sys_fail(mrb, "pipe");
}
mrb_fd_cloexec(mrb, pr[0]);
mrb_fd_cloexec(mrb, pr[1]);
io_fd_cloexec(mrb, pr[0]);
io_fd_cloexec(mrb, pr[1]);
}
if (OPEN_WRITABLE_P(flags)) {
@@ -489,8 +489,8 @@ mrb_io_s_popen(mrb_state *mrb, mrb_value klass)
if (pr[1] != -1) close(pr[1]);
mrb_sys_fail(mrb, "pipe");
}
mrb_fd_cloexec(mrb, pw[0]);
mrb_fd_cloexec(mrb, pw[1]);
io_fd_cloexec(mrb, pw[0]);
io_fd_cloexec(mrb, pw[1]);
}
if (!doexec) {
@@ -530,7 +530,7 @@ mrb_io_s_popen(mrb_state *mrb, mrb_value klass)
for (fd = 3; fd < NOFILE; fd++) {
close(fd);
}
mrb_proc_exec(cmd);
io_process_exec(cmd);
mrb_raisef(mrb, E_IO_ERROR, "command not found: %s", cmd);
_exit(127);
}
@@ -553,7 +553,7 @@ mrb_io_s_popen(mrb_state *mrb, mrb_value klass)
mrb_iv_set(mrb, io, MRB_IVSYM(buf), mrb_str_new_cstr(mrb, ""));
fptr = mrb_io_alloc(mrb);
fptr = io_alloc(mrb);
fptr->fd = fd;
fptr->fd2 = write_fd;
fptr->pid = pid;
@@ -600,7 +600,7 @@ symdup(mrb_state *mrb, int fd, mrb_bool *failed)
}
static mrb_value
mrb_io_initialize_copy(mrb_state *mrb, mrb_value copy)
io_init_copy(mrb_state *mrb, mrb_value copy)
{
mrb_value orig = mrb_get_arg1(mrb);
mrb_value buf;
@@ -615,7 +615,7 @@ mrb_io_initialize_copy(mrb_state *mrb, mrb_value copy)
fptr_finalize(mrb, fptr_copy, FALSE);
mrb_free(mrb, fptr_copy);
}
fptr_copy = (struct mrb_io*)mrb_io_alloc(mrb);
fptr_copy = (struct mrb_io*)io_alloc(mrb);
DATA_TYPE(copy) = &mrb_io_type;
DATA_PTR(copy) = fptr_copy;
@@ -627,7 +627,7 @@ mrb_io_initialize_copy(mrb_state *mrb, mrb_value copy)
if (failed) {
mrb_sys_fail(mrb, 0);
}
mrb_fd_cloexec(mrb, fptr_copy->fd);
io_fd_cloexec(mrb, fptr_copy->fd);
if (fptr_orig->fd2 != -1) {
fptr_copy->fd2 = symdup(mrb, fptr_orig->fd2, &failed);
@@ -635,7 +635,7 @@ mrb_io_initialize_copy(mrb_state *mrb, mrb_value copy)
close(fptr_copy->fd);
mrb_sys_fail(mrb, 0);
}
mrb_fd_cloexec(mrb, fptr_copy->fd2);
io_fd_cloexec(mrb, fptr_copy->fd2);
}
fptr_copy->pid = fptr_orig->pid;
@@ -685,7 +685,7 @@ badfd:
}
static mrb_value
mrb_io_initialize(mrb_state *mrb, mrb_value io)
io_init(mrb_state *mrb, mrb_value io)
{
struct mrb_io *fptr;
mrb_int fd;
@@ -711,7 +711,7 @@ mrb_io_initialize(mrb_state *mrb, mrb_value io)
opt = mrb_hash_new(mrb);
}
flags = mrb_io_mode_to_flags(mrb, mode);
flags = io_mode_to_flags(mrb, mode);
mrb_iv_set(mrb, io, MRB_IVSYM(buf), mrb_str_new_cstr(mrb, ""));
@@ -720,7 +720,7 @@ mrb_io_initialize(mrb_state *mrb, mrb_value io)
fptr_finalize(mrb, fptr, TRUE);
mrb_free(mrb, fptr);
}
fptr = mrb_io_alloc(mrb);
fptr = io_alloc(mrb);
DATA_TYPE(io) = &mrb_io_type;
DATA_PTR(io) = fptr;
@@ -806,7 +806,7 @@ io_get_read_fptr(mrb_state *mrb, mrb_value self)
}
static mrb_value
mrb_io_check_readable(mrb_state *mrb, mrb_value self)
io_check_readable(mrb_state *mrb, mrb_value self)
{
io_get_read_fptr(mrb, self);
return mrb_nil_value();
@@ -823,7 +823,7 @@ io_get_write_fptr(mrb_state *mrb, mrb_value self)
}
static mrb_value
mrb_io_isatty(mrb_state *mrb, mrb_value self)
io_isatty(mrb_state *mrb, mrb_value self)
{
struct mrb_io *fptr;
@@ -834,7 +834,7 @@ mrb_io_isatty(mrb_state *mrb, mrb_value self)
}
static mrb_value
mrb_io_s_for_fd(mrb_state *mrb, mrb_value klass)
io_s_for_fd(mrb_state *mrb, mrb_value klass)
{
struct RClass *c = mrb_class_ptr(klass);
enum mrb_vtype ttype = MRB_INSTANCE_TT(c);
@@ -843,11 +843,11 @@ mrb_io_s_for_fd(mrb_state *mrb, mrb_value klass)
/* copied from mrb_instance_alloc() */
if (ttype == 0) ttype = MRB_TT_OBJECT;
obj = mrb_obj_value((struct RObject*)mrb_obj_alloc(mrb, ttype, c));
return mrb_io_initialize(mrb, obj);
return io_init(mrb, obj);
}
static mrb_value
mrb_io_s_sysclose(mrb_state *mrb, mrb_value klass)
io_s_sysclose(mrb_state *mrb, mrb_value klass)
{
mrb_int fd;
mrb->c->ci->mid = 0;
@@ -888,13 +888,13 @@ reopen:
mrb_locale_free(fname);
if (fd <= 2) {
mrb_fd_cloexec(mrb, fd);
io_fd_cloexec(mrb, fd);
}
return fd;
}
static mrb_value
mrb_io_s_sysopen(mrb_state *mrb, mrb_value klass)
io_s_sysopen(mrb_state *mrb, mrb_value klass)
{
mrb_value path = mrb_nil_value();
mrb_value mode = mrb_nil_value();
@@ -908,13 +908,13 @@ mrb_io_s_sysopen(mrb_state *mrb, mrb_value klass)
}
pat = RSTRING_CSTR(mrb, path);
flags = mrb_io_mode_to_flags(mrb, mode);
flags = io_mode_to_flags(mrb, mode);
fd = mrb_cloexec_open(mrb, pat, flags, perm);
return mrb_fixnum_value(fd);
}
static mrb_value
mrb_io_sysread_common(mrb_state *mrb,
io_sysread_common(mrb_state *mrb,
fssize_t (*readfunc)(int, void*, fsize_t, off_t),
mrb_value io, mrb_value buf, mrb_int maxlen, off_t offset)
{
@@ -960,18 +960,18 @@ sysread(int fd, void *buf, fsize_t nbytes, off_t offset)
}
static mrb_value
mrb_io_sysread(mrb_state *mrb, mrb_value io)
io_sysread(mrb_state *mrb, mrb_value io)
{
mrb_value buf = mrb_nil_value();
mrb_int maxlen;
mrb_get_args(mrb, "i|S", &maxlen, &buf);
return mrb_io_sysread_common(mrb, sysread, io, buf, maxlen, 0);
return io_sysread_common(mrb, sysread, io, buf, maxlen, 0);
}
static mrb_value
mrb_io_sysseek(mrb_state *mrb, mrb_value io)
io_sysseek(mrb_state *mrb, mrb_value io)
{
struct mrb_io *fptr;
off_t pos;
@@ -994,7 +994,7 @@ mrb_io_sysseek(mrb_state *mrb, mrb_value io)
}
static mrb_value
mrb_io_syswrite_common(mrb_state *mrb,
io_syswrite_common(mrb_state *mrb,
fssize_t (*writefunc)(int, const void*, fsize_t, off_t),
mrb_value io, mrb_value buf, off_t offset)
{
@@ -1023,17 +1023,17 @@ syswrite(int fd, const void *buf, fsize_t nbytes, off_t offset)
}
static mrb_value
mrb_io_syswrite(mrb_state *mrb, mrb_value io)
io_syswrite(mrb_state *mrb, mrb_value io)
{
mrb_value buf;
mrb_get_args(mrb, "S", &buf);
return mrb_io_syswrite_common(mrb, syswrite, io, buf, 0);
return io_syswrite_common(mrb, syswrite, io, buf, 0);
}
static mrb_value
mrb_io_close(mrb_state *mrb, mrb_value self)
io_close(mrb_state *mrb, mrb_value self)
{
struct mrb_io *fptr;
fptr = io_get_open_fptr(mrb, self);
@@ -1042,7 +1042,7 @@ mrb_io_close(mrb_state *mrb, mrb_value self)
}
static mrb_value
mrb_io_close_write(mrb_state *mrb, mrb_value self)
io_close_write(mrb_state *mrb, mrb_value self)
{
struct mrb_io *fptr;
fptr = io_get_open_fptr(mrb, self);
@@ -1053,7 +1053,7 @@ mrb_io_close_write(mrb_state *mrb, mrb_value self)
}
static mrb_value
mrb_io_closed(mrb_state *mrb, mrb_value io)
io_closed(mrb_state *mrb, mrb_value io)
{
struct mrb_io *fptr;
fptr = (struct mrb_io*)mrb_data_get_ptr(mrb, io, &mrb_io_type);
@@ -1065,7 +1065,7 @@ mrb_io_closed(mrb_state *mrb, mrb_value io)
}
static mrb_value
mrb_io_pid(mrb_state *mrb, mrb_value io)
io_pid(mrb_state *mrb, mrb_value io)
{
struct mrb_io *fptr;
fptr = io_get_open_fptr(mrb, io);
@@ -1114,7 +1114,7 @@ mrb_io_read_data_pending(mrb_state *mrb, mrb_value io)
#if !defined(_WIN32) && !(defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE)
static mrb_value
mrb_io_s_pipe(mrb_state *mrb, mrb_value klass)
io_s_pipe(mrb_state *mrb, mrb_value klass)
{
mrb_value r = mrb_nil_value();
mrb_value w = mrb_nil_value();
@@ -1122,13 +1122,13 @@ mrb_io_s_pipe(mrb_state *mrb, mrb_value klass)
struct mrb_io *fptr_w;
int pipes[2];
if (mrb_pipe(mrb, pipes) == -1) {
if (io_pipe(mrb, pipes) == -1) {
mrb_sys_fail(mrb, "pipe");
}
r = mrb_obj_value(mrb_data_object_alloc(mrb, mrb_class_ptr(klass), NULL, &mrb_io_type));
mrb_iv_set(mrb, r, MRB_IVSYM(buf), mrb_str_new_cstr(mrb, ""));
fptr_r = mrb_io_alloc(mrb);
fptr_r = io_alloc(mrb);
fptr_r->fd = pipes[0];
fptr_r->readable = 1;
fptr_r->writable = 0;
@@ -1138,7 +1138,7 @@ mrb_io_s_pipe(mrb_state *mrb, mrb_value klass)
w = mrb_obj_value(mrb_data_object_alloc(mrb, mrb_class_ptr(klass), NULL, &mrb_io_type));
mrb_iv_set(mrb, w, MRB_IVSYM(buf), mrb_str_new_cstr(mrb, ""));
fptr_w = mrb_io_alloc(mrb);
fptr_w = io_alloc(mrb);
fptr_w->fd = pipes[1];
fptr_w->readable = 0;
fptr_w->writable = 1;
@@ -1151,7 +1151,7 @@ mrb_io_s_pipe(mrb_state *mrb, mrb_value klass)
#endif
static mrb_value
mrb_io_s_select(mrb_state *mrb, mrb_value klass)
io_s_select(mrb_state *mrb, mrb_value klass)
{
const mrb_value *argv;
mrb_int argc;
@@ -1330,7 +1330,7 @@ mrb_io_fileno(mrb_state *mrb, mrb_value io)
}
static mrb_value
mrb_io_fileno_m(mrb_state *mrb, mrb_value io)
io_fileno(mrb_state *mrb, mrb_value io)
{
int fd = mrb_io_fileno(mrb, io);
return mrb_fixnum_value(fd);
@@ -1338,7 +1338,7 @@ mrb_io_fileno_m(mrb_state *mrb, mrb_value io)
#if defined(F_GETFD) && defined(F_SETFD) && defined(FD_CLOEXEC)
static mrb_value
mrb_io_close_on_exec_p(mrb_state *mrb, mrb_value self)
io_close_on_exec_p(mrb_state *mrb, mrb_value self)
{
struct mrb_io *fptr;
int ret;
@@ -1355,12 +1355,12 @@ mrb_io_close_on_exec_p(mrb_state *mrb, mrb_value self)
return mrb_true_value();
}
#else
# define mrb_io_close_on_exec_p mrb_notimplement_m
# define io_close_on_exec_p mrb_notimplement_m
#endif
#if defined(F_GETFD) && defined(F_SETFD) && defined(FD_CLOEXEC)
static mrb_value
mrb_io_set_close_on_exec(mrb_state *mrb, mrb_value self)
io_set_close_on_exec(mrb_state *mrb, mrb_value self)
{
struct mrb_io *fptr;
int flag, ret;
@@ -1390,11 +1390,11 @@ mrb_io_set_close_on_exec(mrb_state *mrb, mrb_value self)
return mrb_bool_value(b);
}
#else
# define mrb_io_set_close_on_exec mrb_notimplement_m
# define io_set_close_on_exec mrb_notimplement_m
#endif
static mrb_value
mrb_io_set_sync(mrb_state *mrb, mrb_value self)
io_set_sync(mrb_state *mrb, mrb_value self)
{
struct mrb_io *fptr;
mrb_bool b;
@@ -1406,7 +1406,7 @@ mrb_io_set_sync(mrb_state *mrb, mrb_value self)
}
static mrb_value
mrb_io_sync(mrb_state *mrb, mrb_value self)
io_sync(mrb_state *mrb, mrb_value self)
{
struct mrb_io *fptr;
fptr = io_get_open_fptr(mrb, self);
@@ -1428,7 +1428,7 @@ value2off(mrb_state *mrb, mrb_value offv)
* pread(maxlen, offset, outbuf = "") -> outbuf
*/
static mrb_value
mrb_io_pread(mrb_state *mrb, mrb_value io)
io_pread(mrb_state *mrb, mrb_value io)
{
mrb_value buf = mrb_nil_value();
mrb_value off;
@@ -1436,7 +1436,7 @@ mrb_io_pread(mrb_state *mrb, mrb_value io)
mrb_get_args(mrb, "io|S!", &maxlen, &off, &buf);
return mrb_io_sysread_common(mrb, pread, io, buf, maxlen, value2off(mrb, off));
return io_sysread_common(mrb, pread, io, buf, maxlen, value2off(mrb, off));
}
/*
@@ -1444,13 +1444,13 @@ mrb_io_pread(mrb_state *mrb, mrb_value io)
* pwrite(buffer, offset) -> wrote_bytes
*/
static mrb_value
mrb_io_pwrite(mrb_state *mrb, mrb_value io)
io_pwrite(mrb_state *mrb, mrb_value io)
{
mrb_value buf, off;
mrb_get_args(mrb, "So", &buf, &off);
return mrb_io_syswrite_common(mrb, pwrite, io, buf, value2off(mrb, off));
return io_syswrite_common(mrb, pwrite, io, buf, value2off(mrb, off));
}
#endif /* MRB_WITH_IO_PREAD_PWRITE */
@@ -1475,7 +1475,7 @@ io_bufread(mrb_state *mrb, mrb_value str, mrb_int len)
}
static mrb_value
mrb_io_bufread(mrb_state *mrb, mrb_value self)
io_bufread_m(mrb_state *mrb, mrb_value self)
{
mrb_value str;
mrb_int len;
@@ -1491,7 +1491,7 @@ mrb_io_bufread(mrb_state *mrb, mrb_value self)
#define BUF_SIZE 4096
static mrb_value
mrb_io_read_buf(mrb_state *mrb, mrb_value self)
io_read_buf(mrb_state *mrb, mrb_value self)
{
mrb_value buf = mrb_iv_get(mrb, self, MRB_IVSYM(buf));
if (!mrb_nil_p(buf)) {
@@ -1499,11 +1499,11 @@ mrb_io_read_buf(mrb_state *mrb, mrb_value self)
if (RSTRING_LEN(buf) > 0) return buf;
}
mrb_str_modify(mrb, RSTRING(buf));
return mrb_io_sysread_common(mrb, sysread, self, buf, BUF_SIZE, 0);
return io_sysread_common(mrb, sysread, self, buf, BUF_SIZE, 0);
}
static mrb_value
mrb_io_readchar(mrb_state *mrb, mrb_value self)
io_readchar(mrb_state *mrb, mrb_value self)
{
mrb_value buf;
mrb_int len = 1;
@@ -1546,39 +1546,39 @@ mrb_init_io(mrb_state *mrb)
MRB_SET_INSTANCE_TT(io, MRB_TT_CDATA);
mrb_include_module(mrb, io, mrb_module_get(mrb, "Enumerable")); /* 15.2.20.3 */
mrb_define_class_method(mrb, io, "_popen", mrb_io_s_popen, MRB_ARGS_ARG(1,2));
mrb_define_class_method(mrb, io, "_sysclose", mrb_io_s_sysclose, MRB_ARGS_REQ(1));
mrb_define_class_method(mrb, io, "for_fd", mrb_io_s_for_fd, MRB_ARGS_ARG(1,2));
mrb_define_class_method(mrb, io, "select", mrb_io_s_select, MRB_ARGS_ARG(1,3));
mrb_define_class_method(mrb, io, "sysopen", mrb_io_s_sysopen, MRB_ARGS_ARG(1,2));
mrb_define_class_method(mrb, io, "_popen", io_s_popen, MRB_ARGS_ARG(1,2));
mrb_define_class_method(mrb, io, "_sysclose", io_s_sysclose, MRB_ARGS_REQ(1));
mrb_define_class_method(mrb, io, "for_fd", io_s_for_fd, MRB_ARGS_ARG(1,2));
mrb_define_class_method(mrb, io, "select", io_s_select, MRB_ARGS_ARG(1,3));
mrb_define_class_method(mrb, io, "sysopen", io_s_sysopen, MRB_ARGS_ARG(1,2));
#if !defined(_WIN32) && !(defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE)
mrb_define_class_method(mrb, io, "_pipe", mrb_io_s_pipe, MRB_ARGS_NONE());
mrb_define_class_method(mrb, io, "_pipe", io_s_pipe, MRB_ARGS_NONE());
#endif
mrb_define_method(mrb, io, "initialize", mrb_io_initialize, MRB_ARGS_ARG(1,2)); /* 15.2.20.5.21 (x)*/
mrb_define_method(mrb, io, "initialize_copy", mrb_io_initialize_copy, MRB_ARGS_REQ(1));
mrb_define_method(mrb, io, "_check_readable", mrb_io_check_readable, MRB_ARGS_NONE());
mrb_define_method(mrb, io, "isatty", mrb_io_isatty, MRB_ARGS_NONE());
mrb_define_method(mrb, io, "sync", mrb_io_sync, MRB_ARGS_NONE());
mrb_define_method(mrb, io, "sync=", mrb_io_set_sync, MRB_ARGS_REQ(1));
mrb_define_method(mrb, io, "sysread", mrb_io_sysread, MRB_ARGS_ARG(1,1));
mrb_define_method(mrb, io, "sysseek", mrb_io_sysseek, MRB_ARGS_ARG(1,1));
mrb_define_method(mrb, io, "syswrite", mrb_io_syswrite, MRB_ARGS_REQ(1));
mrb_define_method(mrb, io, "close", mrb_io_close, MRB_ARGS_NONE()); /* 15.2.20.5.1 */
mrb_define_method(mrb, io, "close_write", mrb_io_close_write, MRB_ARGS_NONE());
mrb_define_method(mrb, io, "close_on_exec=", mrb_io_set_close_on_exec, MRB_ARGS_REQ(1));
mrb_define_method(mrb, io, "close_on_exec?", mrb_io_close_on_exec_p, MRB_ARGS_NONE());
mrb_define_method(mrb, io, "closed?", mrb_io_closed, MRB_ARGS_NONE()); /* 15.2.20.5.2 */
mrb_define_method(mrb, io, "pid", mrb_io_pid, MRB_ARGS_NONE()); /* 15.2.20.5.2 */
mrb_define_method(mrb, io, "fileno", mrb_io_fileno_m, MRB_ARGS_NONE());
mrb_define_method(mrb, io, "pread", mrb_io_pread, MRB_ARGS_ANY()); /* ruby 2.5 feature */
mrb_define_method(mrb, io, "pwrite", mrb_io_pwrite, MRB_ARGS_ANY()); /* ruby 2.5 feature */
mrb_define_method(mrb, io, "initialize", io_init, MRB_ARGS_ARG(1,2)); /* 15.2.20.5.21 (x)*/
mrb_define_method(mrb, io, "initialize_copy", io_init_copy, MRB_ARGS_REQ(1));
mrb_define_method(mrb, io, "_check_readable", io_check_readable, MRB_ARGS_NONE());
mrb_define_method(mrb, io, "isatty", io_isatty, MRB_ARGS_NONE());
mrb_define_method(mrb, io, "sync", io_sync, MRB_ARGS_NONE());
mrb_define_method(mrb, io, "sync=", io_set_sync, MRB_ARGS_REQ(1));
mrb_define_method(mrb, io, "sysread", io_sysread, MRB_ARGS_ARG(1,1));
mrb_define_method(mrb, io, "sysseek", io_sysseek, MRB_ARGS_ARG(1,1));
mrb_define_method(mrb, io, "syswrite", io_syswrite, MRB_ARGS_REQ(1));
mrb_define_method(mrb, io, "close", io_close, MRB_ARGS_NONE()); /* 15.2.20.5.1 */
mrb_define_method(mrb, io, "close_write", io_close_write, MRB_ARGS_NONE());
mrb_define_method(mrb, io, "close_on_exec=", io_set_close_on_exec, MRB_ARGS_REQ(1));
mrb_define_method(mrb, io, "close_on_exec?", io_close_on_exec_p, MRB_ARGS_NONE());
mrb_define_method(mrb, io, "closed?", io_closed, MRB_ARGS_NONE()); /* 15.2.20.5.2 */
mrb_define_method(mrb, io, "pid", io_pid, MRB_ARGS_NONE()); /* 15.2.20.5.2 */
mrb_define_method(mrb, io, "fileno", io_fileno, MRB_ARGS_NONE());
mrb_define_method(mrb, io, "pread", io_pread, MRB_ARGS_ANY()); /* ruby 2.5 feature */
mrb_define_method(mrb, io, "pwrite", io_pwrite, MRB_ARGS_ANY()); /* ruby 2.5 feature */
mrb_define_const_id(mrb, io, MRB_SYM(SEEK_SET), mrb_fixnum_value(SEEK_SET));
mrb_define_const_id(mrb, io, MRB_SYM(SEEK_CUR), mrb_fixnum_value(SEEK_CUR));
mrb_define_const_id(mrb, io, MRB_SYM(SEEK_END), mrb_fixnum_value(SEEK_END));
mrb_define_method(mrb, io, "_read_buf", mrb_io_read_buf, MRB_ARGS_NONE());
mrb_define_method(mrb, io, "_readchar", mrb_io_readchar, MRB_ARGS_NONE());
mrb_define_class_method(mrb, io, "_bufread", mrb_io_bufread, MRB_ARGS_REQ(2));
mrb_define_method(mrb, io, "_read_buf", io_read_buf, MRB_ARGS_NONE());
mrb_define_method(mrb, io, "_readchar", io_readchar, MRB_ARGS_NONE());
mrb_define_class_method(mrb, io, "_bufread", io_bufread_m, MRB_ARGS_REQ(2));
}