tiny_ring 1.0.0 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/tiny_ring.rb +5 -0
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0310e9d9d45217d00a3c355cd4858c8643ee3e35461c97d61e55a71afd70f66f
4
- data.tar.gz: a0cd6337aa725c55a617bc9e39a44ab1d8e411359824f87cf5eae09db8553f99
3
+ metadata.gz: edd25bf9bc983864f463c3c427d72adb713f306c07569e9a1c443d315636fdaf
4
+ data.tar.gz: 3ee665db584921ac439f47bcb6c308b2ddd8a9eb6709ba26498be05aa044ca82
5
5
  SHA512:
6
- metadata.gz: 98a113680b76baab7dbc4f2c2273aa142c12ef6c69a29de626e99d913e3fbc7a5b1df1970ed497b812b4da47972fd539c9ef14d94dffc29e14dc284dd5c5a0f3
7
- data.tar.gz: feb8d20566eb55c86fa194c35577b17db3f9407288b42dd7164f2707d63c2f88545dc3e921d8a2ad8db4385c1c819d6b4288de2afea2a2ff218df8d7593d87b3
6
+ metadata.gz: 3e4411ef1eacfa56fecb83ca0d077dff1ae91d6e3748aa24d8c0f6dabd0fb72eb773da44d9e2491a0eed6187cf73a3950da0a14b6368f28e6ccba328671ffa90
7
+ data.tar.gz: 981db199668a2266299db06852504704ba34b9d481cc63114373e75c1f8ba947a8bf92440b688f82691fd980c79348c6e275a5b79c5de5c26e8b629c7376e476
data/lib/tiny_ring.rb CHANGED
@@ -8,13 +8,18 @@
8
8
  # > tr << 4 # => [4, 2, 3]
9
9
  # > puts tr.to_a.inspect # => [2, 3, 4]
10
10
  class TinyRing
11
+ attr_reader :size,
12
+ :lifetime_pushes
13
+
11
14
  def initialize(size)
12
15
  @size = size
16
+ @lifetime_pushes = 0
13
17
  @buffer = Array.new(size)
14
18
  @current_index = 0
15
19
  end
16
20
 
17
21
  def push(item)
22
+ @lifetime_pushes += 1
18
23
  @buffer[@current_index] = item
19
24
  @current_index = (@current_index + 1) % @size
20
25
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tiny_ring
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeff Lunt
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-09-19 00:00:00.000000000 Z
11
+ date: 2023-09-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest