meander 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6806984c8648500b8f01dc412f430a8c0a8d46a5
4
- data.tar.gz: be7ac8abcf8f8c1f2667c8776a9725b73353764c
3
+ metadata.gz: 5a3a8e4229801dbfdbe059575217825508f53cd9
4
+ data.tar.gz: 0e3cec51b79e748742755b4d1d64dfefeb9c8653
5
5
  SHA512:
6
- metadata.gz: 6f8997e20d34d1b77d52dbeee098e0a9162fd3d7cf77c23c20b9f60d1f969504fae67a7e8c4747a8e23d1b7c44717b5933f6f2dad4c418d89202c9a38e3dbaa7
7
- data.tar.gz: 1a6f48159a49563b0a0aef243f5f18f5d33a26ed7843e014fd81c7b98605422c58afbc5b75f93156967377262f0d13823ea5e6608192e4e18db0f20d47cb988c
6
+ metadata.gz: 94e34836c0816f24a00ab83a0c70c89733a34beb5b6036f402a4341e26565c80e49835d9af912b981edebdc731f86de56e90ce8d94ae450bbdb92d403c82f9eb
7
+ data.tar.gz: e80f1d6cb38feaa90d2575b1d993727020b11543b764cd0b35a3c5f9c8cfd2855ec81ac7b6e665b8ac445bec96e3ac09983a1464c779caa026074a12feac65e8
@@ -40,6 +40,7 @@ module Meander
40
40
  # m.b # => 2 # Attention! Value remains unchanged
41
41
  class Mutable < Delegator
42
42
  include CommonMethods
43
+ include Enumerable
43
44
 
44
45
  def self.own_keys_cover_class
45
46
  klass = self
@@ -70,8 +71,17 @@ module Meander
70
71
  end
71
72
  end
72
73
 
73
- def is_a?(klass)
74
- klass.ancestors.include?(Hash) || super
74
+ def dup
75
+ self.class.new(self)
76
+ end
77
+
78
+ def each &block
79
+ if block_given?
80
+ __getobj__.each{ |i| yield i }
81
+ @own_keys.each{ |i| yield i }
82
+ else
83
+ enum_for :each
84
+ end
75
85
  end
76
86
 
77
87
  def keys
@@ -111,7 +121,7 @@ module Meander
111
121
  end
112
122
 
113
123
  extend Forwardable
114
- def_delegator :@own_keys, :[]=
124
+ def_delegators :@own_keys, :[]=, :is_a?
115
125
 
116
126
  private
117
127
 
@@ -1,3 +1,3 @@
1
1
  module Meander
2
- VERSION = '0.1.2'.freeze
2
+ VERSION = '0.1.3'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: meander
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kostrov Alexander
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-05-12 00:00:00.000000000 Z
11
+ date: 2017-05-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor