Ruby Newbie homepage Ruby Newbie homepage

How to use

Quick guide

Official content
Returns a string containing the downcased characters in self:
s = 'Hello World!' # => "Hello World!"
s.downcase         # => "hello world!"
The casing may be affected by the given options; see Case Mapping.
               static VALUE
rb_str_downcase(int argc, VALUE *argv, VALUE str)
    rb_encoding *enc;
    OnigCaseFoldType flags = ONIGENC_CASE_DOWNCASE;
    VALUE ret;

    flags = check_case_options(argc, argv, flags);
    enc = str_true_enc(str);
    if (case_option_single_p(flags, enc, str)) {
        ret = rb_str_new(RSTRING_PTR(str), RSTRING_LEN(str));
        str_enc_copy(ret, str);
    else if (flags&ONIGENC_CASE_ASCII_ONLY) {
        ret = rb_str_new(0, RSTRING_LEN(str));
        rb_str_ascii_casemap(str, ret, &flags, enc);
    else {
        ret = rb_str_casemap(str, &flags, enc);

    return ret;

Was this page useful?