CSS::SAC::ConditionFactory - the default ConditionFactory
my $cf = CSS::SAC::ConditionFactory->new; my $cond1 = $cf->create_foo_condition; my $cond2 = $cf->create_bar_condition;
This is the default ConditionFactory for CSS::SAC. It creates conditions of all types defined in SAC. You may wish to subclass or replace the default ConditionFactory in order to get your own condition objects.
I plan on adding more flexibility to this factory so that one could tell it the classes to use for various conditions, that would avoid enforcing subclassing/recoding for people that only want to replace a family of factory methods.
I know that some of the method names are quite lengthy, but given the great number of possible conditions it helps to have descriptive names.
These define the interface that must be adhered to by ConditionFactories. The Java names (given in parens) work too, though the Perl ones are recommended.
Creates a new condition factory object.
create_and_condition($first,$second) (createAndCondition)
creates a combinator condition of type and
create_attribute_condition($lname,$ns,$specified,$value) (createAttributeCondition)
creates an attr condition
create_begin_hyphen_attribute_condition($lname,$ns,$specified,$value) (createBeginHyphenAttributeCondition)
creates a attr condition of type bh
create_class_condition($ns,$value) (createClassCondition)
creates a attr condition of type class
create_content_condition($data) (createContentCondition)
creates a content condition
create_id_condition($value) (createIdCondition)
creates a attr condition of type id
create_lang_condition($lang) (createLangCondition)
creates a lang condition
create_negative_condition($cond) (createNegativeCondition)
creates a negative condition
create_one_of_attribute_condition($lname,$ns,$specified,$value) (createOneOfAttributeCondition)
creates a attr condition of type id
create_only_child_condition() (createOnlyChildCondition)
creates a only-child condition
create_only_type_condition() (createOnlyTypeCondition)
creates a only-type condition
create_or_condition($first,$second) (createOrCondition)
creates a combinator condition of type or
create_positional_condition($position,$type_node,$same_type) (createPositionalCondition)
creates a positional condition
create_pseudo_class_condition($ns,$value) (createPseudoClassCondition)
creates a attr condition of type pseudo class
There's some experimental stuff in here to provide for some new CSS constructs. It is and will remain undocumented until there is consensus on the handling of these new tokens. If you badly need to use one of the new CSS3 conditions that isn't documented, look at the source for features tagged EXPERIMENTAL.
Robin Berjon <robin@knowscape.com>
This module is licensed under the same terms as Perl itself.