lru-cacher 1.3.5 → 1.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: cc7e12137a036160e14431fe97760a9c0880c6b8
4
- data.tar.gz: c4c587836cd9045a4f2cbaaac6b0b761c62fc9aa
3
+ metadata.gz: 44daf7c9f5110dd1173318feefb2a8e4bc298c20
4
+ data.tar.gz: 8ce2285a1b06a565ad5b15b6e951033c4b0b8992
5
5
  SHA512:
6
- metadata.gz: f2a512ea52d962c7f4c4325c1997eb5d92f4f9e975819b3a40b2adf739f6d0be867134c18cc280dc42bed44a6540a26c2d85dcb2319308b9c1c6d777d9faa369
7
- data.tar.gz: 88303fb1fbfa437f18d2e66ca93ddbb078c34cecbbe988955b82d6c04678a84ed4f62effc186b14754f2f4afe194f14b222146b5402a07f74f6c06634677575e
6
+ metadata.gz: a0a8c0a6738a80f9d62832a3458ba939d126c4a3f955acc15ec994f46c2988773bc2624ff43e3c2e12897da805059d2bb51978f360988615bd6df8935a0140b7
7
+ data.tar.gz: cd50abfc92997b01870c773ba1b0855bbc96572aef1969472464ef70bef9bae0fb143c2e2f386e4b70ada3943a0edbc0a9916a505f318d6f8ac5b7e9259ab641
@@ -1,3 +1,3 @@
1
1
  class LRUCacher
2
- VERSION = '1.3.5'
2
+ VERSION = '1.3.6'
3
3
  end
data/lib/lru-cacher.rb CHANGED
@@ -8,12 +8,16 @@ class LRUCacher
8
8
  end
9
9
 
10
10
  def set(key, value)
11
- new_node = LRUCacher::Node.new(value, key, @tail, nil)
12
- @head = new_node unless @tail
13
- @tail.next_node = new_node if @tail
14
- @tail = new_node
15
- @table[key] = new_node
16
- delete(@head.key) if @head && over_threshold?
11
+ if exists?(key)
12
+ @table[key].value = value
13
+ else
14
+ new_node = LRUCacher::Node.new(value, key, @tail, nil)
15
+ @head = new_node unless @tail
16
+ @tail.next_node = new_node if @tail
17
+ @tail = new_node
18
+ @table[key] = new_node
19
+ delete(@head.key) if @head && over_threshold?
20
+ end
17
21
  end
18
22
 
19
23
  def exists?(key)
@@ -44,8 +48,8 @@ class LRUCacher
44
48
  @tail.next_node = current_node
45
49
  @tail = current_node
46
50
  end
47
- current_node
48
51
  end
52
+ current_node
49
53
  end
50
54
 
51
55
  def delete(key)
metadata CHANGED
@@ -1,80 +1,80 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lru-cacher
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.5
4
+ version: 1.3.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Manther
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-06-09 00:00:00.000000000 Z
11
+ date: 2016-06-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: bundler
15
14
  requirement: !ruby/object:Gem::Requirement
16
15
  requirements:
17
16
  - - '>='
18
17
  - !ruby/object:Gem::Version
19
18
  version: '0'
20
- type: :development
19
+ name: bundler
21
20
  prerelease: false
21
+ type: :development
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '>='
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: rake
29
28
  requirement: !ruby/object:Gem::Requirement
30
29
  requirements:
31
30
  - - ~>
32
31
  - !ruby/object:Gem::Version
33
32
  version: '10.0'
34
- type: :development
33
+ name: rake
35
34
  prerelease: false
35
+ type: :development
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ~>
39
39
  - !ruby/object:Gem::Version
40
40
  version: '10.0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: rspec
43
42
  requirement: !ruby/object:Gem::Requirement
44
43
  requirements:
45
44
  - - '>='
46
45
  - !ruby/object:Gem::Version
47
46
  version: '0'
48
- type: :development
47
+ name: rspec
49
48
  prerelease: false
49
+ type: :development
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - '>='
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: simplecov
57
56
  requirement: !ruby/object:Gem::Requirement
58
57
  requirements:
59
58
  - - ~>
60
59
  - !ruby/object:Gem::Version
61
60
  version: 0.10.0
62
- type: :development
61
+ name: simplecov
63
62
  prerelease: false
63
+ type: :development
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - ~>
67
67
  - !ruby/object:Gem::Version
68
68
  version: 0.10.0
69
69
  - !ruby/object:Gem::Dependency
70
- name: simplecov-rcov
71
70
  requirement: !ruby/object:Gem::Requirement
72
71
  requirements:
73
72
  - - ~>
74
73
  - !ruby/object:Gem::Version
75
74
  version: 0.2.3
76
- type: :development
75
+ name: simplecov-rcov
77
76
  prerelease: false
77
+ type: :development
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - ~>
@@ -106,7 +106,7 @@ homepage: https://github.com/Manther/lru-cache
106
106
  licenses:
107
107
  - MIT
108
108
  metadata: {}
109
- post_install_message:
109
+ post_install_message:
110
110
  rdoc_options: []
111
111
  require_paths:
112
112
  - lib
@@ -121,9 +121,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
121
121
  - !ruby/object:Gem::Version
122
122
  version: '0'
123
123
  requirements: []
124
- rubyforge_project:
125
- rubygems_version: 2.0.14.1
126
- signing_key:
124
+ rubyforge_project:
125
+ rubygems_version: 2.4.8
126
+ signing_key:
127
127
  specification_version: 4
128
128
  summary: LRU Caching gem.
129
129
  test_files: []
130
+ has_rdoc: