Double-ended queue with limited length
Elixir
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
config
lib
test
.gitignore
.travis.yml
LICENSE.md
README.md
mix.exs
mix.lock

README.md

LQueue

Build Status Hex.pm

Double-ended queue with limited length. It can hold just specified amount of elements. If more are added, the elements from the top of the queue are (by default) discarded and the new ones added to the rear of the queue.

Installation

If available in Hex, the package can be installed by adding lqueue to your list of dependencies in mix.exs:

def deps do
  [{:lqueue, "~> 1.1"}]
end

Usage

The limited queue implements the Enumerable, Collectable and Inspect protocols, so all the functions from them are available.

Apart from protocol function, there are others, implemented by LQueue module:

  • new/1
  • full?/1
  • clear/1
  • max_count/1
  • push/2
  • push_front/2
  • pop/1
  • pop_rear/1
  • get/1
  • get_rear/1
  • drop/1
  • drop_rear/1
  • from_list/2