Ruby を学んでいて、Ruby オブジェクトを json にシリアライズする方法を考えています。私は ActiveSupport やその他の gem を使用していますが、これを行う最善の方法は何ですか? 次のアプローチは機能せず、失敗します
BinaryTree.rb:4:in `require': no such file to load -- json (LoadError)
私の質問は、何をインストールし、どの require ステートメントを使用する必要があるかということです。
#!/usr/bin/env ruby
require 'pp'
require 'json'
class BinaryTree
attr_accessor :key, :value, :left, :right
def initialize(key=nil,value=nil, left=nil, right=nil)
@key, @value, @left, @right = key, value, left, right
end
def insert(key,value)
if @key.nil?
@key = key
return @value = value
end
if key == @key
return @value = value
end
if key > @key
if @right.nil?
@right = BinaryTree.new
end
return @right.insert(key, value)
end
if @left.nil?
@left = BinaryTree.new
end
return @left.insert(key, value)
end
end
if __FILE__ == $0
bt = BinaryTree.new
bt.insert(5,2)
bt.insert(4,5)
bt.insert(6,3)
bt.insert(9,7)
bt.insert(8,9)
pp bt
puts JSON.encode(bt)
end