Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
A simple Ruby implementation of a Circular Buffer
branch: master
Failed to load latest commit information.
lib up version to 0.1.1
test add fix for Ruby 1.8
.gitignore update gitignore
AUTHORS Applied Apache 2.0 license
COPYING Apache 2.0 license
Gemfile Add various structure files
README.md Applied Apache 2.0 license
Rakefile add benchmark
cbuffer.gemspec remove rdoc link in gemspec

README.md

CBuffer

Overview

A circular buffer, cyclic buffer or ring buffer is a data structure that uses a single, fixed-size buffer as if it were connected end-to-end. This structure lends itself easily to buffering data streams. This library impliments such a buffer.

Installation

gem install cbuffer

** Usage

require 'cbuffer'

a = CBuffer.new 5 => <CBuffer @size=5> 
a.put 1 => false 
a.put 2 => false 
a.put "Duncan" => false 
a.put 999 => false 
a.get => 1 
a.get => 2 
a.get => "Duncan" 
a.put "xxx" => false 
a.get => 999

Todo

  • threading support
  • fetch items by index
  • view onto items

Contributing

  • Fork the project
  • Send a pull request
  • Don't touch the .gemspec, I'll do that when I release a new version
Something went wrong with that request. Please try again.