hash_wia 0.8.3 → 0.8.5

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
  SHA256:
3
- metadata.gz: d5930dc95d402ba16463fb44dad2ab7040ebf609e2ec9029f3e7b273ca02f169
4
- data.tar.gz: 6aab0064805ad56568bb47b3b4e7ff5a4621c79f14ad4877a60fef5148164d9e
3
+ metadata.gz: 9940f7179d7a0bd3fca3d3e316245a3a95aab1f5d0dbf7fdb8151f0e53f6f09f
4
+ data.tar.gz: 47d54c37abc1ce7a0cfcdaf03568c9259b3494cae37a08622a492cbefa24949a
5
5
  SHA512:
6
- metadata.gz: e8bd2458e7f9ae1aa7e15053ce4faa423376ada1c7e319b1595eaf0e908b68f8e78ae917e3a25e90fc86b506077f234dab4018e9af1faa778f6f0c8001c6e2cc
7
- data.tar.gz: 93dfaaff3e99a4fe826d27f81323fdaf5a7239ffb5dfe1499e1ed5e162e54c1c4ad9d883f4f6d0ebea422a8f3b1f3add731e0d9552a54ee9ac9d3344331eb250
6
+ metadata.gz: 107b7669b62a6b949b7bcaea724657031b449d5aa1f6ba7feb9535978d5cab8b7680c1455947446780d10d47b55310ae06cdc3cf632a65f2c2023acd3e4cf68e
7
+ data.tar.gz: 81932ca9a8ec3a9fa6ebd4ba41a58fa0fb407a9e36520a97959776c2bc9a0f1e8b26a5c70a3299f972dc8e3aae7d2a4400e83b75604caa069ec9f5ae1c155a40
data/.version CHANGED
@@ -1 +1 @@
1
- 0.8.3
1
+ 0.8.5
@@ -1,10 +1,4 @@
1
1
  module HashWiaModule
2
- def initialize hash=nil
3
- if hash
4
- hash.each { |k,v| self[k] = v }
5
- end
6
- end
7
-
8
2
  # overload common key names with
9
3
  %i(size length zip minmax store cycle chunk sum uniq chain).each do |el|
10
4
  define_method el do
@@ -28,6 +22,7 @@ module HashWiaModule
28
22
 
29
23
  def []= key, value
30
24
  key = key.to_s unless key.class == Symbol
25
+ delete(key.to_s).nil? && delete(key.to_sym)
31
26
  super key, value
32
27
  end
33
28
 
@@ -56,7 +51,9 @@ module HashWiaModule
56
51
  end
57
52
 
58
53
  def merge hash
59
- dup.tap do |h|
54
+ dup
55
+ .extend(HashWiaModule)
56
+ .tap do |h|
60
57
  hash.each { |k, v| h[k.to_s] = v }
61
58
  end
62
59
  end
@@ -3,7 +3,7 @@ class Hash
3
3
  # { foo: :bar }.to_hwia :foo, :bar # create struct and fill
4
4
  def to_hwia *args
5
5
  if args.first.nil?
6
- HashWia.new self
6
+ self.extend HashWiaModule
7
7
  else
8
8
  list = args.map(&:to_s).flatten
9
9
  extra = keys.map(&:to_s) - list
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hash_wia
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.3
4
+ version: 0.8.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dino Reic
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-01-04 00:00:00.000000000 Z
11
+ date: 2024-02-17 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Gem provides simple access to common Ruby hash types bundled in one simple
14
14
  class
@@ -41,7 +41,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
41
41
  - !ruby/object:Gem::Version
42
42
  version: '0'
43
43
  requirements: []
44
- rubygems_version: 3.5.3
44
+ rubygems_version: 3.4.10
45
45
  signing_key:
46
46
  specification_version: 4
47
47
  summary: Hash with indifferent access + goodies