[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#256644: ITP: libtree-simple-perl -- A simple tree object

Package: wnpp
Severity: wishlist

* Package name    : libtree-simple-perl
  Version         : 1.05
  Upstream Author : Stevan Little <stevan@iinteractive.com>
* URL             : http://search.cpan.org/CPAN/authors/id/S/ST/STEVAN/
* License         : GPL (>= 1) or Perl Artistic
  Description     : A simple tree object

 This module is a fully object-oriented implementation of a simple
 n-ary tree. It is built upon the concept of parent-child
 relationships, so therefore every Tree::Simple object has both a
 parent and a set of children (who themselves may have children, and so
 on). Every Tree::Simple object also has siblings, as they are just the
 children of their immediate parent.
 It can be used to model hierarchal information such as a file-system,
 the organizational structure of a company, an object inheritance
 hierarchy, versioned files from a version control system or even an
 abstract syntax tree for use in a parser. It makes no assumptions as
 to your intended usage, but instead simply provides the structure and
 means of accessing and traversing said structure.
 This module uses exceptions and a minimal Design By Contract
 style. All method arguments are required unless specified in the
 documentation, if a required argument is not defined an exception will
 usually be thrown. Many arguments are also required to be of a
 specific type, for instance the $parent argument to the constructor
 must be a Tree::Simple object or an object derived from Tree::Simple,
 otherwise an exception is thrown. This may seems harsh to some, but
 this allows me to have the confidence that my code works as I intend,
 and for you to enjoy the same level of confidence when using this
 module. Note however that this module does not use any Exception or
 Error module, the exceptions are just strings thrown with die.

-- System Information:
Debian Release: testing/unstable
  APT prefers testing
  APT policy: (900, 'testing')
Architecture: i386 (i686)
Kernel: Linux 2.6.7

Reply to: