Skip to content
instance method

Range#as_json

(*untyped) -> ::Hash[::String, ::String | [ Elem, Elem, bool ]]
as_json(*)

Methods Range#as_json and Range.json_create may be used to serialize and deserialize a Range object; see Marshal.

Method Range#as_json serializes self, returning a 2-element hash representing self:

Example
require 'json/add/range'
x = (1..4).as_json     # => {"json_class"=>"Range", "a"=>[1, 4, false]}
y = (1...4).as_json    # => {"json_class"=>"Range", "a"=>[1, 4, true]}
z = ('a'..'d').as_json # => {"json_class"=>"Range", "a"=>["a", "d", false]}

Method JSON.create deserializes such a hash, returning a Range object:

Example
Range.json_create(x) # => 1..4
Range.json_create(y) # => 1...4
Range.json_create(z) # => "a".."d"
See also #=== #begin #== #bsearch also in 3.4 · 3.3 · 3.2 · 3.1 · 3.0