diff options
| author | Yukihiro Matz Matsumoto <[email protected]> | 2013-03-19 11:58:31 +0900 |
|---|---|---|
| committer | Yukihiro Matz Matsumoto <[email protected]> | 2013-03-19 11:58:31 +0900 |
| commit | dc2e1c1ce8ae6da16532337b85ea1064db8d0624 (patch) | |
| tree | fc389b0c1bc23dea76e92c5747a8905a31966844 /mrbgems/mruby-time/src | |
| parent | 5217d889633fc556458b2327c30ba483e02ce6d7 (diff) | |
| parent | 6ab9c389c43bdad2311b384852a1f448e56a527c (diff) | |
| download | mruby-dc2e1c1ce8ae6da16532337b85ea1064db8d0624.tar.gz mruby-dc2e1c1ce8ae6da16532337b85ea1064db8d0624.zip | |
Merge branch 'pr-add-new-api-mrb_true_or_false_value' of https://github.com/monaka/mruby into monaka-pr-add-new-api-mrb_true_or_false_value
Diffstat (limited to 'mrbgems/mruby-time/src')
| -rw-r--r-- | mrbgems/mruby-time/src/time.c | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/mrbgems/mruby-time/src/time.c b/mrbgems/mruby-time/src/time.c index 524077941..075f234b5 100644 --- a/mrbgems/mruby-time/src/time.c +++ b/mrbgems/mruby-time/src/time.c @@ -86,11 +86,6 @@ timegm(struct tm *tm) * second level. Also, there are only 2 timezones, namely UTC and LOCAL. */ -#ifndef mrb_bool_value -#define mrb_bool_value(val) ((val) ? mrb_true_value() : mrb_false_value()) -#endif - - enum mrb_timezone { MRB_TIMEZONE_NONE = 0, MRB_TIMEZONE_UTC = 1, @@ -300,15 +295,14 @@ mrb_time_eq(mrb_state *mrb, mrb_value self) { mrb_value other; struct mrb_time *tm1, *tm2; + mrb_bool eq_p; mrb_get_args(mrb, "o", &other); tm1 = (struct mrb_time *)mrb_get_datatype(mrb, self, &mrb_time_type); tm2 = (struct mrb_time *)mrb_get_datatype(mrb, other, &mrb_time_type); - if (!tm1 || !tm2) return mrb_false_value(); - if (tm1->sec == tm2->sec && tm1->usec == tm2->usec) { - return mrb_true_value(); - } - return mrb_false_value(); + eq_p = tm1 && tm2 && tm1->sec == tm2->sec && tm1->usec == tm2->usec; + + return mrb_true_or_false_value(eq_p); } static mrb_value @@ -465,7 +459,7 @@ mrb_time_dstp(mrb_state *mrb, mrb_value self) tm = (struct mrb_time *)mrb_get_datatype(mrb, self, &mrb_time_type); if (!tm) return mrb_nil_value(); - return mrb_bool_value(tm->datetime.tm_isdst); + return mrb_true_or_false_value(tm->datetime.tm_isdst); } /* 15.2.19.7.8 */ @@ -684,7 +678,7 @@ mrb_time_utcp(mrb_state *mrb, mrb_value self) struct mrb_time *tm; tm = (struct mrb_time *)mrb_get_datatype(mrb, self, &mrb_time_type); if (!tm) return mrb_nil_value(); - return mrb_bool_value(tm->timezone == MRB_TIMEZONE_UTC); + return mrb_true_or_false_value(tm->timezone == MRB_TIMEZONE_UTC); } |
