RubyTree is a pure Ruby implementation of the generic tree data structure. It provides a node-based model to store named nodes in the tree, and provides simple APIs to access, modify and traverse the structure. The implementation is node-centric, where individual nodes in the tree are the primary structural elements. All common tree-traversal methods (pre-order, post-order, and breadth-first) are supported. The library mixes in the Enumerable and Comparable modules to allow access to the tree as a standard collection (iteration, comparison, etc.). A Binary tree is also provided, which provides the in-order traversal in addition to the other methods. RubyTree supports importing from, and exporting to JSON, and also supports the Ruby's standard object marshaling. This is a BSD licensed open source project, and is hosted at http://github.com/evolve75/RubyTree, and is available as a standard gem from http://rubygems.org/gems/rubytree. The home page for RubyTree is at http://rubytree.rubyforge.org.
Required Ruby Version
>= 1.8.7
Authors
Anupam Sengupta
Versions
- 2.2.0 February 06, 2026 (54.5 KB)
- 2.1.1 December 20, 2024 (53 KB)
- 2.1.0 August 12, 2024 (53 KB)
- 2.0.3 December 27, 2023 (52.5 KB)
- 2.0.2 June 30, 2023 (52.5 KB)
- 0.9.2 January 04, 2014 (42 KB)