NAME
CSS::Object::Rule - CSS Object Oriented Rule
SYNOPSIS
use CSS::Object::Rule;
my $rule = CSS::Object::Rule->new( debug => 3, format => $format_object ) ||
die( CSS::Object::Rule->error );
VERSION
v0.2.0
DESCRIPTION
CSS::Object::Rule a class containing one or more CSS::Object::Selector objects and one ore more CSS::Object::Property objects.
CONSTRUCTOR
new
To instantiate a new CSS::Object::Rule object, pass an hash reference of following parameters:
- debug
-
This is an integer. The bigger it is and the more verbose is the output.
- format
-
This is a CSS::Object::Format object or one of its child modules.
METHODS
add_element
Provided with a CSS::Object::Element object and this add it to the array of "elements" for this rule.
add_property
Provided with a CSS::Object::Property object and this adds it to the list of properties contained in this rule.
The object is added to the "properties" array object, which is an Module::Generic::Array object.
add_selector
Provided with a CSS::Object::Selector object and this adds it to the list of selectors contained in this rule.
The object is added to the "selectors" array object, which is an Module::Generic::Array object.
add_to
Provided with a CSS::Object object and this add our object to its list of elements by calling "add_rule" in CSS::Object
as_string
This calls the "format" and its method "rule_as_string" in CSS::Object::Format
It returns the css string produced or undef and sets an Module::Generic::Exception upon error.
elements
Sets or gets the list of elements for this rule. This uses an array object from Module::Generic::Array
Typical elements for a rule are properties (CSS::Object::Property) and comments (CSS::Object::Comment).
elements_as_string
This takes our list of "elements" and call CSS:Object::Format/elements_as_string to stringify them and return a formatted string.
format
This is a CSS::Object::Format object or one of its child modules.
get_property_by_name
Provided with a property name, and this returns its matching CSS::Object::Property objects.
It returns a list of objects in list context or an empty list if no match found.
In object context, it returns the first match found or the Module::Generic::Null special class object to allow chaining even when nothing was returned. in scalar context, it just returns the first entry found, if any, so this could very well be undefined.
properties
This sets or gets the Module::Generic::Array object used to store all the CSS::Object::Property objects.
properties_as_string
This returns the string value of all the properties objects currently held. It calls the method "properties_as_string" in CSS::Object::Format to stringify those properties.
remove_from
This takes a CSS::Object as argument and it will remove this current rule object from the css list of rules.
It basically calls "remove_rule" in CSS::Object.
It returns the current rule object.
remove_property
Given a CSS::Object::Property, this will remove it from its list of elements. It returns the current rule object.
It basically does:
$self->elements->remove( $rule );
selectors
This sets or gets the Module::Generic::Array object used to store all the CSS::Object::Selector objects.
selectors_as_string
This returns the string value of all the selector objects currently held. It calls the method "selectors_as_string" in CSS::Object::Format to stringify those selectors.
AUTHOR
Jacques Deguest <jack@deguest.jp>
SEE ALSO
COPYRIGHT & LICENSE
Copyright (c) 2020 DEGUEST Pte. Ltd.
You can use, copy, modify and redistribute this package and associated files under the same terms as Perl itself.