Why not adopt me?
NAME
Pod::Eventual::Reconstruct - Construct a document from Pod::Eventual events
VERSION
version 1.000002
SYNOPSIS
Constructing a Document from a series of Pod::Eventual events is not hard, its just slightly nuanced, and there's a few small pitfalls for people who want input == output consistency.
This module simply implements the basic layers of edge-cases to make that simpler.
Construct the reconstructor
# Write to $string
my $string;
my $recon = Pod::Eventual::Reconstruct->string_writer( $string )
# or
my $recon = Pod::Eventual::Reconstruct->string_writer( \$string )
# ( both work )
# Write to $file
my $recon = Pod::Eventual::Reconstruct->file_writer( $file )
# Write to file in utf8 mode
my $recon = Pod::Eventual::Reconstruct->file_writer_utf8( $file )
# Write to filehandle
my $recon = Pod::Eventual::Reconstruct->handle_writer_utf8( $handle )
Send Events to it
$recon->write_event( $hashref_from_pod_elemental )
METHODS
string_writer
Create a reconstructor that writes to a string
my $reconstructor = ::Reconstruct->string_writer( $string )
my $reconstructor = ::Reconstruct->string_writer( \$string )
file_writer
Create a reconstructor that writes to a file
my $reconstructor = ::Reconstruct->file_writer( $file_name )
Values of Path::Tiny
or Path::Class
should also work as values of $file_name
file_writer_raw
Create a reconstructor that writes to a file in raw mode
my $reconstructor = ::Reconstruct->file_writer_raw( $file_name )
Values of Path::Tiny
or Path::Class
should also work as values of $file_name
file_writer_utf8
Create a reconstructor that writes to a file in utf8
mode
my $reconstructor = ::Reconstruct->file_writer_utf8( $file_name )
Values of Path::Tiny
or Path::Class
should also work as values of $file_name
handle_writer
Create a reconstructor that writes to a file handle
my $reconstructor = ::Reconstruct->handle_writer( $handle )
write_event
Write a Pod::Eventual
event of any kind to the output target.
$recon->write_event( $eventhash );
Note: This is just a proxy for the other methods which delegates based on the value of $eventhash->{type}
.
Unknown type
's will cause errors.
write_command
Write a Pod::Eventual
command
event.
$event->{type}
MUST be eq 'command'
$recon->write_command({ type => 'command', ... });
write_text
Write a Pod::Eventual
text
event.
$event->{type}
MUST be eq 'text'
$recon->write_text({ type => 'text', ... });
write_nonpod
Write a Pod::Eventual
nonpod
event.
$event->{type}
MUST be eq 'nonpod'
$recon->write_nonpod({ type => 'nonpod', ... });
write_blank
Write a Pod::Eventual
blank
event.
$event->{type}
MUST be eq 'blank'
$recon->write_blank({ type => 'blank', ... });
ATTRIBUTES
write_handle
AUTHOR
Kent Fredric <kentnl@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2017 by Kent Fredric <kentfredric@gmail.com>.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.