module JSON::Pure::Generator::GeneratorMethods::String
Public Class Methods
included(modul)
click to toggle source
Extends modul with the String::Extend
module.
# File lib/json/pure/generator.rb, line 474 def self.included(modul) modul.extend Extend end
Public Instance Methods
to_json(state = nil, *args)
click to toggle source
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 lib/json/pure/generator.rb, line 448 def to_json(state = nil, *args) state = State.from_state(state) if encoding == ::Encoding::UTF_8 string = self else string = encode(::Encoding::UTF_8) end if state.ascii_only? '"' << JSON.utf8_to_json_ascii(string, state.script_safe) << '"' else '"' << JSON.utf8_to_json(string, state.script_safe) << '"' end end
to_json_raw(*args)
click to toggle source
This method creates a JSON
text from the result of a call to to_json_raw_object
of this String
.
# File lib/json/pure/generator.rb, line 491 def to_json_raw(*args) to_json_raw_object.to_json(*args) end
to_json_raw_object()
click to toggle source
This method creates a raw object hash, that can be nested into other data structures and will be unparsed 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 lib/json/pure/generator.rb, line 482 def to_json_raw_object { JSON.create_id => self.class.name, 'raw' => self.unpack('C*'), } end