From f3a5f3ee1dd4beff3ec9d56b596505ee9993878b Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Wed, 28 Dec 2022 10:40:49 +0900 Subject: [PATCH] mruby-io/io.c: define seek constants in C From C macro definitions instead of literal integers (may differ from the platform's definitions). - SEEK_SET - SEEK_CUR - SEEK_END --- mrbgems/mruby-io/mrblib/io.rb | 4 ---- mrbgems/mruby-io/src/io.c | 4 ++++ 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/mrbgems/mruby-io/mrblib/io.rb b/mrbgems/mruby-io/mrblib/io.rb index 20ae8d993..5f62784b9 100644 --- a/mrbgems/mruby-io/mrblib/io.rb +++ b/mrbgems/mruby-io/mrblib/io.rb @@ -5,10 +5,6 @@ class IOError < StandardError; end class EOFError < IOError; end class IO - SEEK_SET = 0 - SEEK_CUR = 1 - SEEK_END = 2 - def self.open(*args, &block) io = self.new(*args) diff --git a/mrbgems/mruby-io/src/io.c b/mrbgems/mruby-io/src/io.c index dd30668b4..0eb23fe0f 100644 --- a/mrbgems/mruby-io/src/io.c +++ b/mrbgems/mruby-io/src/io.c @@ -1578,6 +1578,10 @@ mrb_init_io(mrb_state *mrb) 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_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));