This module is a fully object oriented implementation of a binary tree. Binary
trees are a specialized type of tree which has only two possible branches, a
left branch and a right branch. While it is possible to use an n-ary tree, like
Tree::Simple, to fill most of your binary tree needs, a true binary tree object
is just easier to maintain and use.
Binary Tree objects are especially useful (to me anyway) when building parse
trees of things like mathematical or boolean expressions. They can also be used
in games for such things as decision trees. Binary trees are a well studied
data structure and there is a wealth of information on the web about them.
rubygem-benelux provides a mad way to time Ruby codes.
Features:
- A replacement for Benchmark.measure
- Create timers for any Ruby method
- Store arbitrary messages
- Granular statistics
- Thread-safe
This gem aims at being a simple and reliable solution for controlling
external programs running in the background on any Ruby / OS
combination.
The code originated in the selenium-webdriver gem, but should prove
useful as a standalone library.
This gem is a lib for managing configfile for cli applications, including:
- call a setup of the config file if it does not exist
- edit configuration and update the config file
Corefines is a collection of general purpose refinements for extending the core
capabilities of Ruby's built-in classes. It also provides a compatibility mode
for older Ruby versions and alternative Ruby implementations that don't support
refinements (yet).
A port of File::ReadBackwards, the Perl module by Uri Guttman,
for reading a file line by line in reverse order. This can
often be helpful for things like log files, where the
interesting information is usually at the end.
FlexMock is a flexible mocking library for use in unit testing and behavior
specification. Mocks are defined with a fluent API that makes mock
specifications easy to read and easy to remember.
Foreigner introduces a few methods to your migrations for adding and removing
foreign key constraints. It also dumps foreign keys to schema.rb.
The following adapters are supported:
- mysql2
- postgres
- sqlite (foreign key methods are a no-op)
A high-level IO library that provides validation, type conversion, and more
for command-line interfaces. HighLine also includes a complete menu system
that can crank out anything from simple list selection to complete shells
with just minutes of work.
Lager (as in the beer) is a logging framework for Erlang. Its purpose is to
provide a more traditional way to perform logging in an erlang application
that plays nicely with traditional UNIX logging tools like logrotate and
syslog.