Tags
view release on metacpan or search on metacpan
t/Tags-Output-Raw/05-open_elements.t
t/Tags-Output-Raw/06-open_tags.t
t/Tags-Output-Raw/07-put-simple_element.t
t/Tags-Output-Raw/08-put-element.t
t/Tags-Output-Raw/09-put-preserve_from_attribute.t
t/Tags-Output-Raw/10-put-preserve_from_constructor.t
t/Tags-Output-Raw/11-put-comment.t
t/Tags-Output-Raw/12-put-no_data_callback.t
t/Tags-Output-Raw/13-put-no_simple.t
t/Tags-Output-Raw/14-put-raw.t
t/Tags-Output-Raw/15-put-cdata.t
t/Tags-Output-Raw/16-put-output_handler.t
t/Tags-Output-Raw/17-put-error.t
t/Tags-Output-Raw/18-put-instruction.t
t/Tags-Output-Raw/19-put-data_callback.t
t/Tags-Output-Raw/20-put-skip_bad_tags.t
t/Tags-Output-Raw/21-put-auto_flush.t
t/Tags-Output-Raw/22-put-end_of_element.t
t/Tags-Output/01-use.t
t/Tags-Output/02-version.t
t/Tags-Output/03-new.t
cd - Cdata section.
d - Data section.
e - End of tag.
i - Instruction section.
r - Raw section.
Data:
a - $attr, $value
b - $element
c - @comment
cd - @cdata
d - @data
e - $element
i - $target, $code
r - @raw_data
SEE ALSO
Task::Tags
Install the Tags modules.
REPOSITORY
SHA256 714c1236c98dead5d0e037af591a9773c213600c2dd99734d529dc6153efea28 t/Tags-Output-Raw/05-open_elements.t
SHA256 ca6921d37b5ea4933eb1c09762ec4c47e9937cd32b8d0852951d3c0a8a607a52 t/Tags-Output-Raw/06-open_tags.t
SHA256 f41d7e6efc91b2c8ab2bde546a068d0a48d11eda8d48cc366e720db0ba5575b4 t/Tags-Output-Raw/07-put-simple_element.t
SHA256 4b9ef16c0f3522decd007194900cc1d5731965e526b123e26b63d3afe4877c33 t/Tags-Output-Raw/08-put-element.t
SHA256 9a908bd34fca5483266aeb6aa03501425a3c71b26f4c7c64fe16b814ce0b7d20 t/Tags-Output-Raw/09-put-preserve_from_attribute.t
SHA256 3aea3a0edf815de9dff4c1ad32ba02025bb04206805ece2f745cb3bc9dd8e310 t/Tags-Output-Raw/10-put-preserve_from_constructor.t
SHA256 913a342213d2f2a1b10226ffb7bfd51272e32c5a2d308c1127e76210b75b76a3 t/Tags-Output-Raw/11-put-comment.t
SHA256 d1b736f367ec1cb8374b170961feb4f770630cea9356ec56a5eb7ae0f369946f t/Tags-Output-Raw/12-put-no_data_callback.t
SHA256 a062e7b19db473ab104fd9bc73c1a005cb598fdddd6eda73483f4e909b9bf0f7 t/Tags-Output-Raw/13-put-no_simple.t
SHA256 05a9f54b7fc96c4140c6fa6e6163816e75b420e84a35b969460c3f761b494099 t/Tags-Output-Raw/14-put-raw.t
SHA256 965706d22b57928d92d5d815f1c5627c244f80a740f7148957b3b5825368aa6e t/Tags-Output-Raw/15-put-cdata.t
SHA256 ca86e35613e308ba460df162b847ebd5bd60bf871d7dec285cd3a91bf3dab0b7 t/Tags-Output-Raw/16-put-output_handler.t
SHA256 3c33fbe6f4edad9cea747f20ae652428ddf73a19d9c8b42a5acd6c9275fddcb6 t/Tags-Output-Raw/17-put-error.t
SHA256 5eaabdb99a73d627e9294f96867a1c41de2553f8072f6964766fc6bb9ff1521b t/Tags-Output-Raw/18-put-instruction.t
SHA256 f686b83eedaabb568b10a1b448cd70607a74dbcd265c9b1c18a245fefd649832 t/Tags-Output-Raw/19-put-data_callback.t
SHA256 01552fc56005e4ac8791a7a589c764d9d9d851f5f4b91293caf1ee2219abdf62 t/Tags-Output-Raw/20-put-skip_bad_tags.t
SHA256 1efed62b16f739887559e5c1f3455879372a8fa71ab25e912f0333d346c52cb1 t/Tags-Output-Raw/21-put-auto_flush.t
SHA256 b51de66532779c9d0c62b8123c778fe7c0fb42b7d9662699759760bcaa547cc7 t/Tags-Output-Raw/22-put-end_of_element.t
SHA256 d0e3d182e5fe8627161f654ed99fb1dc5a7dd5d10ee51d46d4d558ebd0d64b3a t/Tags-Output/01-use.t
SHA256 cca0aaaad7e8f24bf2861647cda9eda93ad0b4eaa43dfb69c67ef7f47d7546f2 t/Tags-Output/02-version.t
SHA256 0c61b06fc5763be8db9c9ed7b34d888b3ad5f527e728c4d6886c180774de5374 t/Tags-Output/03-new.t
cd - Cdata section.
d - Data section.
e - End of tag.
i - Instruction section.
r - Raw section.
Data:
a - $attr, $value
b - $element
c - @comment
cd - @cdata
d - @data
e - $element
i - $target, $code
r - @raw_data
=head1 SEE ALSO
=over
=item L<Task::Tags>
Tags/Output.pm view on Meta::CPAN
$self->_check_arguments(\@tags_struct, 1, 2);
$self->_put_attribute(@tags_struct);
# Begin of tag.
} elsif ($type eq 'b') {
$self->_check_arguments(\@tags_struct, 1, 1);
$self->_put_begin_of_tag(@tags_struct);
# CData.
} elsif ($type eq 'cd') {
$self->_put_cdata(@tags_struct);
# Comment.
} elsif ($type eq 'c') {
$self->_put_comment(@tags_struct);
# Data.
} elsif ($type eq 'd') {
$self->_put_data(@tags_struct);
# End of tag.
Tags/Output.pm view on Meta::CPAN
my ($self, $tag) = @_;
push @{$self->{'flush_code'}}, 'Begin of tag';
unshift @{$self->{'printed_tags'}}, $tag;
return;
}
# CData.
sub _put_cdata {
my ($self, @cdata) = @_;
push @{$self->{'flush_code'}}, 'CData';
return;
}
# Comment.
sub _put_comment {
my ($self, @comments) = @_;
Tags/Output.pm view on Meta::CPAN
Attribute callback.
Method can write output to 'flush_code' object parameter as array or scalar.
Returns undef.
=item C<_put_begin_of_tag($tag)>
Begin of tag.
Method can write output to 'flush_code' object parameter as array or scalar.
Returns undef.
=item C<_put_cdata(@cdata)>
CData.
Method can write output to 'flush_code' object parameter as array or scalar.
Returns undef.
=item C<_put_comment(@comment)>
Comment.
Method can write output to 'flush_code' object parameter as array or scalar.
Returns undef.
Tags/Output/Raw.pm view on Meta::CPAN
# Default parameters from SUPER.
$self->SUPER::_default_parameters();
# Attribute callback.
$self->{'attr_callback'} = \&encode_attr_entities;
# Attribute delimeter.
$self->{'attr_delimeter'} = q{"};
# CDATA callback.
$self->{'cdata_callback'} = undef;
# Data callback.
$self->{'data_callback'} = \&encode_char_entities;
# No data callback.
$self->{'no_data_callback'} = ['script', 'style'];
# No simple tags.
$self->{'no_simple'} = [];
Tags/Output/Raw.pm view on Meta::CPAN
# Added tag to printed tags.
unshift @{$self->{'printed_tags'}}, $tag;
$self->{'preserve_obj'}->begin($tag);
return;
}
# CData.
sub _put_cdata {
my ($self, @cdata) = @_;
# Flush tmp code.
if (scalar @{$self->{'tmp_code'}}) {
$self->_flush_tmp('>');
}
# Added begin of cdata section.
unshift @cdata, '<![CDATA[';
# Check to bad cdata.
if (join($EMPTY_STR, @cdata) =~ /]]>$/ms) {
err 'Bad CDATA data.'
}
# Added end of cdata section.
push @cdata, ']]>';
# Process data callback.
$self->_process_callback(\@cdata, 'cdata_callback');
# To flush code.
$self->{'flush_code'} .= join $EMPTY_STR, @cdata;
return;
}
# Comment.
sub _put_comment {
my ($self, @comments) = @_;
# Comment string.
unshift @comments, '<!--';
Tags/Output/Raw.pm view on Meta::CPAN
'attr_delimeter' => "'",
);
$tags->put(['b', 'tag'], ['a', 'attr', 'val'], ['e', 'tag']);
$tags->flush;
=item * C<auto_flush>
Auto flush flag.
Default is 0.
=item * C<cdata_callback>
Subroutine for output processing of cdata.
Input argument is reference to array.
Default value is undef.
Example is similar as 'data_callback'.
=item * C<data_callback>
Subroutine for output processing of data.
Input argument is reference to array.
Default value is &Tags::Utils::encode_char_entities.
t/Tags-Output-Raw/19-put-data_callback.t view on Meta::CPAN
# Test.
my $sub = sub {
my $data_arr_ref = shift;
foreach my $data (@{$data_arr_ref}) {
$data =~ s/a/\./g;
}
return;
};
$obj = Tags::Output::Raw->new(
'cdata_callback' => $sub,
'data_callback' => $sub,
'raw_callback' => $sub,
);
$obj->put(
['b', 'element'],
['d', 'nan', 'ana'],
['cd', 'nan'],
['e', 'element'],
['r', 'ananas'],
);
t/Tags-Output/05-put.t view on Meta::CPAN
use Tags::Output;
use Test::More 'tests' => 3;
use Test::NoWarnings;
# Test.
my $obj = Tags::Output->new;
$obj->put(
['a', 'key', 'val'],
['b', 'element'],
['c', 'comment'],
['cd', 'cdata section'],
['d', 'data section'],
['e', 'element'],
['i', 'target', 'code'],
['r', 'raw data'],
);
my $ret = $obj->flush;
my $right_ret = <<'END';
Attribute
Begin of tag
Comment
t/Tags-Output/05-put.t view on Meta::CPAN
$struct_hr->{$tags_ar->[0]} = 0;
}
$struct_hr->{$tags_ar->[0]}++;
return;
},
);
$obj->put(
['a', 'key', 'val'],
['b', 'element'],
['c', 'comment'],
['cd', 'cdata section'],
['d', 'data section'],
['e', 'element'],
['i', 'target', 'code'],
['r', 'raw data'],
);
$ret = $obj->flush;
is_deeply(
$struct_hr,
{
'a' => 1,
( run in 3.647 seconds using v1.01-cache-2.11-cpan-2398b32b56e )