package Forest::Tree::Writer::SimpleHTML;
use Moose;
use Sub::Current;
our $VERSION = '0.03';
our $AUTHORITY = 'cpan:STEVAN';
with 'Forest::Tree::Writer',
'Forest::Tree::Roles::HasNodeFormatter';
sub as_string {
my ($self) = @_;
my $out;
sub {
my $t = shift;
my $indent = (' ' x $t->depth);
$out .= ($indent . '
' . $self->format_node($t) . '' . "\n")
unless $t->depth == -1;
unless ($t->is_leaf) {
$out .= ($indent . '' . "\n");
map { ROUTINE->($_) } @{ $t->children };
$out .= ($indent . '
' . "\n");
}
}->($self->tree);
return $out;
}
__PACKAGE__->meta->make_immutable;
no Moose; 1;
__END__
=pod
=head1 NAME
Forest::Tree::Writer::SimpleHTML - A simple HTML writer for Forest::Tree heirarchies
=head1 DESCRIPTION
This is a simple writer which draws a tree as an HTML unordered list.
=head1 METHODS
=over 4
=item B
=back
=head1 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.
=head1 AUTHOR
Stevan Little Estevan.little@iinteractive.comE
=head1 COPYRIGHT AND LICENSE
Copyright 2008 Infinity Interactive, Inc.
L
This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.
=cut