/* :nodoc: */ static VALUE cgiesc_unescape(VALUE self, VALUE str, VALUE enc) { StringValue(str); if (rb_enc_str_asciicompat_p(str)) { return optimized_unescape(str, enc); } else { return rb_call_super(1, &str); } }
/* * call-seq: * CGI.unescape(string, encoding=@@accept_charset) -> string * * Returns URL-unescaped string. * */ static VALUE cgiesc_unescape(int argc, VALUE *argv, VALUE self) { VALUE str = (rb_check_arity(argc, 1, 2), argv[0]); StringValue(str); if (rb_enc_str_asciicompat_p(str)) { VALUE enc = accept_charset(argc-1, argv+1, self); return optimized_unescape(str, enc); } else { return rb_call_super(argc, argv); } }