Provided by: libforest-perl_0.10-1_all bug

NAME

       Forest::Tree::Builder - An abstract role for bottom up tree reader

SYNOPSIS

           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;

DESCRIPTION

       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.

METHODS

       create_new_subtree
           Implemented by Forest::Tree::Constructor

       _build_tree
           Constructs a root node by using the top level "subtrees" list as the children.

       _build_subtrees
           Build the subtrees.

           Abstract method that should return an array ref of Forest::Tree::Pure derived objects.

SEE ALSO

       Forest::Tree::Builder::SimpleTextFile

BUGS

       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.

AUTHOR

       Yuval Kogman

COPYRIGHT AND LICENSE

       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.