HTML::Zoom::FilterBuilder - Add Filters to a Stream
+=head1 SYNOPSIS
+
+ use HTML::Zoom;
+ my $root = HTML::Zoom
+ ->from_html(<<MAIN);
+ <html>
+ <head>
+ <title>Default Title</title>
+ </head>
+ <body>
+ Default Content
+ </body>
+ </html>
+ MAIN
+
+ my $body = HTML::Zoom
+ ->from_html(<<BODY);
+ <div id="stuff">
+ <p>Stuff</p>
+ <p id="p1">Stuff</p>
+ </div>
+ BODY
+
+ print $root
+ ->select('title')
+ ->replace_content('Hello World')
+ ->select('body')
+ ->replace_content($body)
+ ->select('#p1')
+ ->replace_content(sub {
+ ## Ask mst...
+
+ })
+ ->to_html;
+
+
=head1 DESCRIPTION
Given a L<HTML::Zoom> stream, provide methods to apply filters which
alter the content of that stream.
+=head1 METHODS
+
+This class defines the following public API
+
+=head2 set_attribute
+
+ TBD
+
+=head2 add_attribute
+
+ TBD
+
+=head2 remove_attribute
+
+ TBD
+
+=head2 collect
+
+ TBD
+
+=head2 collect_content
+
+ TBD
+
+=head2 add_before
+
+ TBD
+
+=head2 add_after
+
+ TBD
+
+=head2 prepend_content
+
+ TBD
+
+=head2 append_content
+
+ TBD
+
+=head2 replace
+
+ TBD
+
+=head2 replace_content
+
+Given a L<HTML::Zoom/select> result, replace the content with a string, array
+or another L<HTML::Zoom> object.
+
+=head2 repeat
+
+ TBD
+
+=head2 repeat_content
+
+ TBD
+
=head1 ALSO SEE
L<HTML::Zoom>