Björn Höhrmann > CSS-SAC > CSS::SAC::LexicalUnit

Download:
CSS-SAC-0.08.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  5
Open  3
View/Report Bugs
Module Version: 0.03   Source  

NAME ^

CSS::SAC::LexicalUnit - SAC units

SYNOPSIS ^

  use CSS::SAC::LexicalUnit qw(:constants);
  foo if $lu->is_type(LU_TYPE_CONSTANT);

DESCRIPTION ^

In the SAC spec, LexicalUnit is a linked list, that is, you only ever hold one LexicalUnit, and you ask for the next of for the previous one when you want to move on.

Such a model seems awkward, though I'm sure it makes sense somehow in Java, likely for a Java-specific reason.

In the Perl implementation, I have changed this. A LexicalUnit is an object that stands on it's own and has no next/previous objects. Instead, the $handler->property callback gets called with a LexicalUnitList, which is in fact just an array ref of LexicalUnits.

We also don't differentiate between IntegerValue, FloatValue, and StringValue, it's always Value in Perl. This also applies to Parameters and SubValues. Both are called as Value and return an array ref of LexicalUnits.

I added the is_type() method, see CSS::SAC::Condition for advantages of that approach.

CONSTANTS ^

METHODS ^

AUTHOR ^

Robin Berjon <robin@knowscape.com>

This module is licensed under the same terms as Perl itself.

syntax highlighting: