Module: JSON::Ext::Generator::GeneratorMethods::String
Relationships & Source Files | |
Namespace Children | |
Modules:
| |
Defined in: | ext/json/generator/generator.c |
Class Method Summary
-
.included(modul)
Extends modul with the
Extend
module.
Instance Method Summary
-
#to_json(*) ⇒ ?
This string should be encoded with UTF-8 A call to this method returns a
::JSON
string encoded with UTF16 big endian characters as u????. -
#to_json_raw(*args) ⇒ ?
This method creates a
::JSON
text from the result of a call to to_json_raw_object of thisString
. -
#to_json_raw_object ⇒ ?
This method creates a raw object hash, that can be nested into other data structures and will be generated as a raw string.
Class Method Details
.included(modul)
Extends modul with the String::Extend
module.
# File 'ext/json/generator/generator.c', line 495
static VALUE mString_included_s(VALUE self, VALUE modul) { VALUE result = rb_funcall(modul, i_extend, 1, mString_Extend); rb_call_super(1, &modul); return result; }
Instance Method Details
#to_json(*) ⇒ ?
This string should be encoded with UTF-8 A call to this method returns a ::JSON
string encoded with UTF16 big endian characters as u????.
# File 'ext/json/generator/generator.c', line 508
static VALUE mString_to_json(int argc, VALUE *argv, VALUE self) { GENERATE_JSON(string); }
#to_json_raw(*args) ⇒ ?
This method creates a ::JSON
text from the result of a call to to_json_raw_object of this String
.
# File 'ext/json/generator/generator.c', line 537
static VALUE mString_to_json_raw(int argc, VALUE *argv, VALUE self) { VALUE obj = mString_to_json_raw_object(self); Check_Type(obj, T_HASH); return mHash_to_json(argc, argv, obj); }
#to_json_raw_object ⇒ ?
This method creates a raw object hash, that can be nested into other data structures and will be generated as a raw string. This method should be used, if you want to convert raw strings to ::JSON
instead of UTF-8 strings, e. g. binary data.
# File 'ext/json/generator/generator.c', line 521
static VALUE mString_to_json_raw_object(VALUE self) { VALUE ary; VALUE result = rb_hash_new(); rb_hash_aset(result, rb_funcall(mJSON, i_create_id, 0), rb_class_name(rb_obj_class(self))); ary = rb_funcall(self, i_unpack, 1, rb_str_new2("C*")); rb_hash_aset(result, rb_str_new2("raw"), ary); return result; }