Sha256: 7df814d821ebaaa05558ae90637946480b2d30df3b7a54a26a50127971ba4cfc

Contents?: true

Size: 357 Bytes

Versions: 34

Compression:

Stored size: 357 Bytes

Contents

# -*- encoding: utf-8 -*-
module Bluepill
  module Util
    class RotationalArray < Array
      def initialize(size)
        @capacity = size

        super() # no size - intentionally
      end

      def push(value)
        super(value)

        self.shift if self.length > @capacity
        self
      end
      alias_method :<<, :push
    end
  end
end

Version data entries

34 entries across 34 versions & 6 rubygems

Version Path
bluepill-0.0.59 lib/bluepill/util/rotational_array.rb
bluepill-0.0.58 lib/bluepill/util/rotational_array.rb
bluepill-0.0.57 lib/bluepill/util/rotational_array.rb
bluepill-0.0.56 lib/bluepill/util/rotational_array.rb
bluepill-0.0.55 lib/bluepill/util/rotational_array.rb
bluepill-0.0.54 lib/bluepill/util/rotational_array.rb
bluepill-0.0.53 lib/bluepill/util/rotational_array.rb
bluepill-0.0.52 lib/bluepill/util/rotational_array.rb
ryansch-bluepill-0.0.53 lib/bluepill/util/rotational_array.rb
bluepill-0.0.51 lib/bluepill/util/rotational_array.rb
bluepill-0.0.50 lib/bluepill/util/rotational_array.rb
bluepill-0.0.49 lib/bluepill/util/rotational_array.rb
bluepill-0.0.48 lib/bluepill/util/rotational_array.rb
bluepill-0.0.47 lib/bluepill/util/rotational_array.rb