Class: Set
- Inherits:
-
Object
- Object
- Set
- Defined in:
- lib/json/add/set.rb
Class Method Summary collapse
-
.json_create(object) ⇒ Object
See #as_json.
Instance Method Summary collapse
-
#as_json ⇒ Object
Methods
Set#as_json
andSet.json_create
may be used to serialize and deserialize a Set object; see Marshal. -
#to_json(*args) ⇒ Object
Returns a JSON string representing
self
:.
Class Method Details
.json_create(object) ⇒ Object
See #as_json.
9 10 11 |
# File 'lib/json/add/set.rb', line 9 def self.json_create(object) new object['a'] end |
Instance Method Details
#as_json ⇒ Object
Methods Set#as_json
and Set.json_create
may be used to serialize and deserialize a Set object; see Marshal.
Method Set#as_json
serializes self
, returning a 2-element hash representing self
:
require 'json/add/set'
x = Set.new(%w/foo bar baz/).as_json
# => {"json_class"=>"Set", "a"=>["foo", "bar", "baz"]}
Method JSON.create
deserializes such a hash, returning a Set object:
Set.json_create(x) # => #<Set: {"foo", "bar", "baz"}>
28 29 30 31 32 33 |
# File 'lib/json/add/set.rb', line 28 def as_json(*) { JSON.create_id => self.class.name, 'a' => to_a, } end |
#to_json(*args) ⇒ Object
Returns a JSON string representing self
:
require 'json/add/set'
puts Set.new(%w/foo bar baz/).to_json
Output:
{"json_class":"Set","a":["foo","bar","baz"]}
44 45 46 |
# File 'lib/json/add/set.rb', line 44 def to_json(*args) as_json.to_json(*args) end |