Sha256: 455ff0ea35eea5ab3973d457db9434d2342def465ec0cab286cb5cc0169c2bac

Contents?: true

Size: 535 Bytes

Versions: 2

Compression:

Stored size: 535 Bytes

Contents

require 'forwardable'

module SonJay
  class ObjectModel

    class ExtraData
      extend Forwardable

      def initialize
        @data = {}
      end

      def []=(name, value)
        name = "#{name}" unless String === name
        @data[name] = value
      end

      def [](name)
        name = "#{name}" unless String === name
        @data[name]
      end

      def hash_merge(other)
        @data.merge( other )
      end

      def to_h
        @data.dup
      end

      def_delegator :@data, :empty?

    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
son_jay-0.4.1 lib/son_jay/object_model/extra_data.rb
son_jay-0.4.0 lib/son_jay/object_model/extra_data.rb