Forest::Tree::Builder3pm
An abstract role for bottom up tree reader
Usage
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;
Overview
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.
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.
Releases
8 releases since Debian 6.0 (Squeeze); the text changed 4 times.