类 Symbol
公共类方法
json_create(o) 点击以切换源代码
参见 as_json。
# File json/lib/json/add/symbol.rb, line 44 def self.json_create(o) o['s'].to_sym end
公共实例方法
as_json(*) 点击以切换源代码
方法 Symbol#as_json 和 Symbol.json_create 可用于序列化和反序列化 Symbol 对象;参见 Marshal。
方法 Symbol#as_json 序列化 self,返回一个表示 self 的 2 元素哈希。
require 'json/add/symbol' x = :foo.as_json # => {"json_class"=>"Symbol", "s"=>"foo"}
方法 JSON.create 反序列化这样一个哈希,返回一个 Symbol 对象。
Symbol.json_create(x) # => :foo
# File json/lib/json/add/symbol.rb, line 23 def as_json(*) { JSON.create_id => self.class.name, 's' => to_s, } end
to_json(*a) 点击以切换源代码
返回一个表示 self 的 JSON 字符串。
require 'json/add/symbol' puts :foo.to_json
输出
# {"json_class":"Symbol","s":"foo"}
# File json/lib/json/add/symbol.rb, line 39 def to_json(*a) as_json.to_json(*a) end