lrucache 0.1.0 → 0.1.1
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.
- data/.rvmrc +1 -1
- data/lib/lrucache.rb +2 -2
- data/lib/lrucache/version.rb +1 -1
- metadata +37 -39
data/.rvmrc
CHANGED
@@ -1 +1 @@
|
|
1
|
-
rvm use ruby-1.9.2@lrucache
|
1
|
+
rvm use ruby-1.9.2@lrucache --create
|
data/lib/lrucache.rb
CHANGED
@@ -10,7 +10,7 @@ class LRUCache
|
|
10
10
|
@max_size = Integer(opts[:max_size] || 100)
|
11
11
|
@default = opts[:default]
|
12
12
|
@ttl = Float(opts[:ttl] || 0)
|
13
|
-
raise "max_size must be
|
13
|
+
raise "max_size must not be negative" if @max_size < 0
|
14
14
|
raise "ttl must be positive or zero" unless @ttl >= 0
|
15
15
|
@pqueue = PriorityQueue.new
|
16
16
|
@data = {}
|
@@ -37,7 +37,7 @@ class LRUCache
|
|
37
37
|
end
|
38
38
|
|
39
39
|
def store(key, value, ttl=nil)
|
40
|
-
evict_lru! unless @data.include?(key) || @data.size <
|
40
|
+
evict_lru! unless @data.include?(key) || @data.size < max_size
|
41
41
|
ttl ||= @ttl
|
42
42
|
expires =
|
43
43
|
if ttl.is_a?(Time)
|
data/lib/lrucache/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lrucache
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 25
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 1
|
10
|
+
version: 0.1.1
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Chris Johnson
|
@@ -15,13 +15,10 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date:
|
19
|
-
default_executable:
|
18
|
+
date: 2012-01-03 00:00:00 Z
|
20
19
|
dependencies:
|
21
20
|
- !ruby/object:Gem::Dependency
|
22
|
-
|
23
|
-
prerelease: false
|
24
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
21
|
+
version_requirements: &id001 !ruby/object:Gem::Requirement
|
25
22
|
none: false
|
26
23
|
requirements:
|
27
24
|
- - ~>
|
@@ -32,12 +29,12 @@ dependencies:
|
|
32
29
|
- 1
|
33
30
|
- 2
|
34
31
|
version: 0.1.2
|
32
|
+
requirement: *id001
|
35
33
|
type: :runtime
|
36
|
-
version_requirements: *id001
|
37
|
-
- !ruby/object:Gem::Dependency
|
38
|
-
name: rspec
|
39
34
|
prerelease: false
|
40
|
-
|
35
|
+
name: PriorityQueue
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
version_requirements: &id002 !ruby/object:Gem::Requirement
|
41
38
|
none: false
|
42
39
|
requirements:
|
43
40
|
- - ~>
|
@@ -48,12 +45,12 @@ dependencies:
|
|
48
45
|
- 6
|
49
46
|
- 0
|
50
47
|
version: 2.6.0
|
48
|
+
requirement: *id002
|
51
49
|
type: :development
|
52
|
-
version_requirements: *id002
|
53
|
-
- !ruby/object:Gem::Dependency
|
54
|
-
name: simplecov
|
55
50
|
prerelease: false
|
56
|
-
|
51
|
+
name: rspec
|
52
|
+
- !ruby/object:Gem::Dependency
|
53
|
+
version_requirements: &id003 !ruby/object:Gem::Requirement
|
57
54
|
none: false
|
58
55
|
requirements:
|
59
56
|
- - ~>
|
@@ -64,12 +61,12 @@ dependencies:
|
|
64
61
|
- 4
|
65
62
|
- 2
|
66
63
|
version: 0.4.2
|
64
|
+
requirement: *id003
|
67
65
|
type: :development
|
68
|
-
version_requirements: *id003
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: rb-fsevent
|
71
66
|
prerelease: false
|
72
|
-
|
67
|
+
name: simplecov
|
68
|
+
- !ruby/object:Gem::Dependency
|
69
|
+
version_requirements: &id004 !ruby/object:Gem::Requirement
|
73
70
|
none: false
|
74
71
|
requirements:
|
75
72
|
- - ~>
|
@@ -80,12 +77,12 @@ dependencies:
|
|
80
77
|
- 4
|
81
78
|
- 3
|
82
79
|
version: 0.4.3
|
80
|
+
requirement: *id004
|
83
81
|
type: :development
|
84
|
-
version_requirements: *id004
|
85
|
-
- !ruby/object:Gem::Dependency
|
86
|
-
name: guard
|
87
82
|
prerelease: false
|
88
|
-
|
83
|
+
name: rb-fsevent
|
84
|
+
- !ruby/object:Gem::Dependency
|
85
|
+
version_requirements: &id005 !ruby/object:Gem::Requirement
|
89
86
|
none: false
|
90
87
|
requirements:
|
91
88
|
- - ~>
|
@@ -96,12 +93,12 @@ dependencies:
|
|
96
93
|
- 6
|
97
94
|
- 2
|
98
95
|
version: 0.6.2
|
96
|
+
requirement: *id005
|
99
97
|
type: :development
|
100
|
-
version_requirements: *id005
|
101
|
-
- !ruby/object:Gem::Dependency
|
102
|
-
name: guard-bundler
|
103
98
|
prerelease: false
|
104
|
-
|
99
|
+
name: guard
|
100
|
+
- !ruby/object:Gem::Dependency
|
101
|
+
version_requirements: &id006 !ruby/object:Gem::Requirement
|
105
102
|
none: false
|
106
103
|
requirements:
|
107
104
|
- - ~>
|
@@ -112,12 +109,12 @@ dependencies:
|
|
112
109
|
- 1
|
113
110
|
- 3
|
114
111
|
version: 0.1.3
|
112
|
+
requirement: *id006
|
115
113
|
type: :development
|
116
|
-
version_requirements: *id006
|
117
|
-
- !ruby/object:Gem::Dependency
|
118
|
-
name: guard-rspec
|
119
114
|
prerelease: false
|
120
|
-
|
115
|
+
name: guard-bundler
|
116
|
+
- !ruby/object:Gem::Dependency
|
117
|
+
version_requirements: &id007 !ruby/object:Gem::Requirement
|
121
118
|
none: false
|
122
119
|
requirements:
|
123
120
|
- - ~>
|
@@ -128,12 +125,12 @@ dependencies:
|
|
128
125
|
- 4
|
129
126
|
- 2
|
130
127
|
version: 0.4.2
|
128
|
+
requirement: *id007
|
131
129
|
type: :development
|
132
|
-
version_requirements: *id007
|
133
|
-
- !ruby/object:Gem::Dependency
|
134
|
-
name: timecop
|
135
130
|
prerelease: false
|
136
|
-
|
131
|
+
name: guard-rspec
|
132
|
+
- !ruby/object:Gem::Dependency
|
133
|
+
version_requirements: &id008 !ruby/object:Gem::Requirement
|
137
134
|
none: false
|
138
135
|
requirements:
|
139
136
|
- - ~>
|
@@ -144,8 +141,10 @@ dependencies:
|
|
144
141
|
- 3
|
145
142
|
- 5
|
146
143
|
version: 0.3.5
|
144
|
+
requirement: *id008
|
147
145
|
type: :development
|
148
|
-
|
146
|
+
prerelease: false
|
147
|
+
name: timecop
|
149
148
|
description: A simple LRU-cache based on a hash and priority queue
|
150
149
|
email:
|
151
150
|
- chris@kindkid.com
|
@@ -167,7 +166,6 @@ files:
|
|
167
166
|
- lrucache.gemspec
|
168
167
|
- spec/lrucache_spec.rb
|
169
168
|
- spec/spec_helper.rb
|
170
|
-
has_rdoc: true
|
171
169
|
homepage: ""
|
172
170
|
licenses: []
|
173
171
|
|
@@ -197,7 +195,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
197
195
|
requirements: []
|
198
196
|
|
199
197
|
rubyforge_project: lrucache
|
200
|
-
rubygems_version: 1.
|
198
|
+
rubygems_version: 1.8.10
|
201
199
|
signing_key:
|
202
200
|
specification_version: 3
|
203
201
|
summary: A simple LRU-cache based on a hash and priority queue
|