NAME
CSS::Struct::Output::Indent - Indent printing 'CSS::Struct' structure to CSS code.
SYNOPSIS
my
$css
= CSS::Struct::Output::Indent->new(
%parameters
);
my
$ret_or_undef
=
$css
->flush(
$reset_flag
);
$css
->put(
@data
);
$css
->
reset
;
METHODS
new
my
$css
= CSS::Struct::Output::Indent->new(
%parameters
);
Constructor.
Returns instance of object.
auto_flush
Auto flush flag.
Default is 0.
comment_delimeters
Reference to array
with
begin and end comment delimeter.
Default value is [
'/*'
,
'*/'
].
Possible
values
are:
- [
'/*'
,
'*/'
]
- [
'<!--'
,
'-->'
],
next_indent
Indent string.
Default value is TAB.
output_handler
Handler
for
print
output strings.
Must be a GLOB.
Default is
undef
.
skip_bad_types
Flag, that means bad
'CSS::Struct'
types skipping.
Default value is 0.
skip_comments
Flag, that means comment skipping.
Default value is 0.
flush
my
$ret_or_undef
=
$css
->flush(
$reset_flag
);
Flush CSS structure in object. If defined 'output_handler' flush to its. Or return CSS. If enabled $reset_flag, then resets internal variables via reset method.
Returns output string or undef.
put(@data)
$css
->put(
@data
);
Put CSS structure in format specified in CSS::Struct.
Returns undef.
reset
$css
->
reset
;
Resets internal variables.
Returns undef.
ERRORS
From CSS::Struct::Output:
Bad comment delimeters.
Bad data.
Bad number of arguments.
(
'CSS::Struct'
structure array),
Bad type of data.
Cannot
write
to output handler.
No opened selector.
Output handler is bad file handler.
Unknown parameter
'%s'
.
EXAMPLE
use
strict;
use
warnings;
my
$css
= CSS::Struct::Output::Indent->new(
'output_handler'
=> \
*STDOUT
,
);
$css
->put([
's'
,
'selector#id'
]);
$css
->put([
's'
,
'div div'
]);
$css
->put([
's'
,
'.class'
]);
$css
->put([
'd'
,
'weight'
,
'100px'
]);
$css
->put([
'd'
,
'font-size'
,
'10em'
]);
$css
->put([
'e'
]);
$css
->flush;
"\n"
;
# Output:
# selector#id, div div, .class {
# weight: 100px;
# font-size: 10em;
# }
DEPENDENCIES
CSS::Struct::Output, Indent, Readonly.
SEE ALSO
- CSS::Struct
-
Struct oriented CSS manipulation.
- CSS::Struct::Output
-
Base class for CSS::Struct::Output::*.
- CSS::Struct::Output::Raw
-
Raw printing 'CSS::Struct' structure to CSS code.
REPOSITORY
https://github.com/michal-josef-spacek/CSS-Struct-Output-Indent
AUTHOR
Michal Josef Špaček mailto:skim@cpan.org
LICENSE AND COPYRIGHT
© 2011-2021 Michal Josef Špaček
BSD 2-Clause License
VERSION
0.04