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_jsonandSet.json_createmay 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 |