DOKK / manpages / debian 10 / libforest-perl / Forest::Tree::Builder.3pm.en
Forest::Tree::Builder(3pm) User Contributed Perl Documentation Forest::Tree::Builder(3pm)

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.

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.

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.

2013-12-18 perl v5.18.1