Sha256: 75c35614b23b360a2523584218cf6e1657ecdfae2e1e1bea244c1106c76ef7ff

Contents?: true

Size: 539 Bytes

Versions: 15

Compression:

Stored size: 539 Bytes

Contents

require 'ostruct'

class Embedly::EmbedlyObject < OpenStruct

  # Resursively make ostruct
  def initialize obj
    o = obj.clone
    o.each do |k,v|
      if v.is_a?Hash
        o[k] = Embedly::EmbedlyObject.new v
      end
    end
    super o
  end

  # for ruby 1.8.x, type should return @table[:type], not the
  # class.
  def type
    method_missing :type
  end

  def marshal_dump
    o = @table.clone
    o.each do |k,v|
      if v.is_a?Embedly::EmbedlyObject
        o[k] = v.marshal_dump
      end
    end
    return o
  end

end

Version data entries

15 entries across 15 versions & 2 rubygems

Version Path
embedly-1.5.5 lib/embedly/model.rb
embedly-1.5.4 lib/embedly/model.rb
embedly-1.5.3 lib/embedly/model.rb
embedly-1.5.2 lib/embedly/model.rb
embedly-1.5.1 lib/embedly/model.rb
embedly-1.5.0 lib/embedly/model.rb
embedly-1.4.1 lib/embedly/model.rb
embedly-1.4.0 lib/embedly/model.rb
anideo-embedly-1.3.0 lib/embedly/model.rb
embedly-1.3.0 lib/embedly/model.rb
embedly-1.2.0 lib/embedly/model.rb
embedly-1.1.0 lib/embedly/model.rb
embedly-1.0.0 lib/embedly/model.rb
embedly-0.4.0 lib/embedly/model.rb
embedly-0.3.3 lib/embedly/model.rb