From c20b8f75dd2aa3797e35aa48ec45dc45e487ae7a Mon Sep 17 00:00:00 2001 From: naruse Date: Thu, 2 Dec 2010 12:28:45 +0000 Subject: * ext/json/lib/json/add/rails.rb: removed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/json/lib/json/add/rails.rb | 58 ------------------------------------------ 1 file changed, 58 deletions(-) delete mode 100644 ext/json/lib/json/add/rails.rb (limited to 'ext/json/lib/json/add') diff --git a/ext/json/lib/json/add/rails.rb b/ext/json/lib/json/add/rails.rb deleted file mode 100644 index 8ce85efe57..0000000000 --- a/ext/json/lib/json/add/rails.rb +++ /dev/null @@ -1,58 +0,0 @@ -# This file contains implementations of rails custom objects for -# serialisation/deserialisation. - -unless Object.const_defined?(:JSON) and ::JSON.const_defined?(:JSON_LOADED) and - ::JSON::JSON_LOADED - require 'json' -end - -class Object - def self.json_create(object) - obj = new - for key, value in object - next if key == JSON.create_id - instance_variable_set "@#{key}", value - end - obj - end - - def to_json(*a) - result = { - JSON.create_id => self.class.name - } - instance_variables.inject(result) do |r, name| - r[name[1..-1]] = instance_variable_get name - r - end - result.to_json(*a) - end -end - -class Symbol - def to_json(*a) - to_s.to_json(*a) - end -end - -module Enumerable - def to_json(*a) - to_a.to_json(*a) - end -end - -# class Regexp -# def to_json(*) -# inspect -# end -# end -# -# The above rails definition has some problems: -# -# 1. { 'foo' => /bar/ }.to_json # => "{foo: /bar/}" -# This isn't valid JSON, because the regular expression syntax is not -# defined in RFC 4627. (And unquoted strings are disallowed there, too.) -# Though it is valid Javascript. -# -# 2. { 'foo' => /bar/mix }.to_json # => "{foo: /bar/mix}" -# This isn't even valid Javascript. - -- cgit v1.2.3