table of contents
Forest::Tree::Builder(3pm) | User Contributed Perl Documentation | Forest::Tree::Builder(3pm) |
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.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
2022-06-14 | perl v5.34.0 |