From acdc2d1f242f2547ca842be5d62a2b06356b39ea Mon Sep 17 00:00:00 2001 From: YAMAMOTO Masaya Date: Wed, 11 Oct 2017 17:53:17 +0900 Subject: Add MRB_WITHOUT_FLOAT --- src/object.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/object.c') diff --git a/src/object.c b/src/object.c index 388a34b44..df2e8b5ab 100644 --- a/src/object.c +++ b/src/object.c @@ -24,8 +24,10 @@ mrb_obj_eq(mrb_state *mrb, mrb_value v1, mrb_value v2) case MRB_TT_SYMBOL: return (mrb_symbol(v1) == mrb_symbol(v2)); +#ifndef MRB_WITHOUT_FLOAT case MRB_TT_FLOAT: return (mrb_float(v1) == mrb_float(v2)); +#endif default: return (mrb_ptr(v1) == mrb_ptr(v2)); @@ -373,7 +375,9 @@ static const struct types { {MRB_TT_ICLASS, "iClass"}, /* internal use: mixed-in module holder */ {MRB_TT_SCLASS, "SClass"}, {MRB_TT_PROC, "Proc"}, +#ifndef MRB_WITHOUT_FLOAT {MRB_TT_FLOAT, "Float"}, +#endif {MRB_TT_ARRAY, "Array"}, {MRB_TT_HASH, "Hash"}, {MRB_TT_STRING, "String"}, @@ -532,6 +536,7 @@ mrb_convert_to_integer(mrb_state *mrb, mrb_value val, mrb_int base) mrb_raise(mrb, E_TYPE_ERROR, "can't convert nil into Integer"); } switch (mrb_type(val)) { +#ifndef MRB_WITHOUT_FLOAT case MRB_TT_FLOAT: if (base != 0) goto arg_error; else { @@ -541,6 +546,7 @@ mrb_convert_to_integer(mrb_state *mrb, mrb_value val, mrb_int base) } } return mrb_flo_to_fixnum(mrb, val); +#endif case MRB_TT_FIXNUM: if (base != 0) goto arg_error; @@ -575,6 +581,7 @@ mrb_Integer(mrb_state *mrb, mrb_value val) return mrb_convert_to_integer(mrb, val, 0); } +#ifndef MRB_WITHOUT_FLOAT MRB_API mrb_value mrb_Float(mrb_state *mrb, mrb_value val) { @@ -595,6 +602,7 @@ mrb_Float(mrb_state *mrb, mrb_value val) return mrb_convert_type(mrb, val, MRB_TT_FLOAT, "Float", "to_f"); } } +#endif MRB_API mrb_value mrb_inspect(mrb_state *mrb, mrb_value obj) -- cgit v1.2.3