summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2019-05-18 08:38:45 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2019-05-18 08:38:45 +0900
commitace0d3949b62b3541a5ab210706f939890890cc0 (patch)
tree45072b95f3ec53cac14c87b22efe034ed92dc3e3
parentd2a2af2481908d208965ecc77a8f11065c50be49 (diff)
downloadmruby-ace0d3949b62b3541a5ab210706f939890890cc0.tar.gz
mruby-ace0d3949b62b3541a5ab210706f939890890cc0.zip
Support `MRB_WITHOUT_FLOAT`.
I assume there's no realistic usage of `Rational` with `MRB_WITHOUT_FLOAT`. But just for consistency.
-rw-r--r--mrbgems/mruby-rational/src/rational.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/mrbgems/mruby-rational/src/rational.c b/mrbgems/mruby-rational/src/rational.c
index 14a9b045d..03f373490 100644
--- a/mrbgems/mruby-rational/src/rational.c
+++ b/mrbgems/mruby-rational/src/rational.c
@@ -36,6 +36,7 @@ rational_initialize(mrb_state *mrb, mrb_value self)
return self;
}
+#ifndef MRB_WITHOUT_FLOAT
static mrb_value
rational_to_f(mrb_state *mrb, mrb_value self)
{
@@ -44,6 +45,7 @@ rational_to_f(mrb_state *mrb, mrb_value self)
return mrb_float_value(mrb, f);
}
+#endif
static mrb_value
rational_to_i(mrb_state *mrb, mrb_value self)
@@ -78,7 +80,9 @@ void mrb_mruby_rational_gem_init(mrb_state *mrb)
mrb_define_method(mrb, rat, "numerator", rational_numerator, MRB_ARGS_NONE());
mrb_define_method(mrb, rat, "denominator", rational_denominator, MRB_ARGS_NONE());
mrb_define_method(mrb, rat, "initialize", rational_initialize, MRB_ARGS_REQ(2));
+#ifndef MRB_WITHOUT_FLOAT
mrb_define_method(mrb, rat, "to_f", rational_to_f, MRB_ARGS_NONE());
+#endif
mrb_define_method(mrb, rat, "to_i", rational_to_i, MRB_ARGS_NONE());
mrb_define_method(mrb, rat, "to_r", rational_to_r, MRB_ARGS_NONE());
mrb_define_method(mrb, rat, "negative?", rational_negative_p, MRB_ARGS_NONE());