From 0df65751c68492285306f9f6f020f3727dfaf51a Mon Sep 17 00:00:00 2001 From: mattn Date: Thu, 27 Mar 2014 11:28:29 +0900 Subject: Implement String#hex --- mrbgems/mruby-string-ext/src/string.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'mrbgems/mruby-string-ext/src') diff --git a/mrbgems/mruby-string-ext/src/string.c b/mrbgems/mruby-string-ext/src/string.c index bb4b4c8fc..ce11da866 100644 --- a/mrbgems/mruby-string-ext/src/string.c +++ b/mrbgems/mruby-string-ext/src/string.c @@ -163,6 +163,12 @@ mrb_str_end_with(mrb_state *mrb, mrb_value self) return mrb_false_value(); } +static mrb_value +mrb_str_hex(mrb_state *mrb, mrb_value self) +{ + return mrb_str_to_inum(mrb, self, 16, FALSE); +} + void mrb_mruby_string_ext_gem_init(mrb_state* mrb) { @@ -176,6 +182,7 @@ mrb_mruby_string_ext_gem_init(mrb_state* mrb) mrb_define_method(mrb, s, "<<", mrb_str_concat2, MRB_ARGS_REQ(1)); mrb_define_method(mrb, s, "start_with?", mrb_str_start_with, MRB_ARGS_REST()); mrb_define_method(mrb, s, "end_with?", mrb_str_end_with, MRB_ARGS_REST()); + mrb_define_method(mrb, s, "hex", mrb_str_hex, MRB_ARGS_NONE()); } void -- cgit v1.2.3