aboutsummaryrefslogtreecommitdiffstats
path: root/ext/json/lib/json/add/ostruct.rb
diff options
context:
space:
mode:
Diffstat (limited to 'ext/json/lib/json/add/ostruct.rb')
-rw-r--r--ext/json/lib/json/add/ostruct.rb31
1 files changed, 0 insertions, 31 deletions
diff --git a/ext/json/lib/json/add/ostruct.rb b/ext/json/lib/json/add/ostruct.rb
deleted file mode 100644
index da81e107a7..0000000000
--- a/ext/json/lib/json/add/ostruct.rb
+++ /dev/null
@@ -1,31 +0,0 @@
-unless defined?(::JSON::JSON_LOADED) and ::JSON::JSON_LOADED
- require 'json'
-end
-require 'ostruct'
-
-# OpenStruct serialization/deserialization
-class OpenStruct
-
- # Deserializes JSON string by constructing new Struct object with values
- # <tt>v</tt> serialized by <tt>to_json</tt>.
- def self.json_create(object)
- new(object['t'] || object[:t])
- end
-
- # Returns a hash, that will be turned into a JSON object and represent this
- # object.
- def as_json(*)
- klass = self.class.name
- klass.to_s.empty? and raise JSON::JSONError, "Only named structs are supported!"
- {
- JSON.create_id => klass,
- 't' => table,
- }
- end
-
- # Stores class name (OpenStruct) with this struct's values <tt>v</tt> as a
- # JSON string.
- def to_json(*args)
- as_json.to_json(*args)
- end
-end