Forest::Tree::Builder - An abstract role for bottom up tree reader
package MyBuilder; use Moose; with qw(Forest::Tree::Builder); # implement required builder: sub _build_subtrees { return [ $self->create_new_subtree( ... ), # probably a recursive process ]; } my $builder = MyBuilder->new( tree_class => ..., ... ); my $tree = $builder->tree;
Forest::Tree::Builder replaces Forest::Tree::Loader and Forest::Tree::Reader with a bottom up construction approach, which is also suitable for constructing Forest::Tree::Pure derived trees without excessive cloning.
It provides a declarative API instead of an imperative one, where tree is lazily constructed on the first use, instead of being constructed immediately and "filled in" by the load method.
tree
load
Implemented by Forest::Tree::Constructor
Constructs a root node by using the top level subtrees list as the children.
subtrees
Build the subtrees.
Abstract method that should return an array ref of Forest::Tree::Pure derived objects.
Forest::Tree::Builder::SimpleTextFile
All complex software has bugs lurking in it, and this module is no exception. If you find a bug please either email me, or add the bug to cpan-RT.
Yuval Kogman
Copyright 2008-2014 Infinity Interactive, Inc.
http://www.iinteractive.com
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
To install Forest, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Forest
CPAN shell
perl -MCPAN -e shell install Forest
For more information on module installation, please visit the detailed CPAN module installation guide.