Peter B. West wrote:
Where does repeated evaluation of the parse tree occur? Is there a parse tree object?

The necessary classes are somewhat distributed across the packages. Some necessary classes are in fop.datatypes, the common property superclasses are in, with being the top of the hierarchy, there's somethiing in and the concrete implementations along with their makers (for parsing) are of course generated.

The tree isn't build from classes deriving from a single class,
like the FO tree. Instead, the class is used for
both unevaluated and evaluated properties and for computing
functions, while length expressions are built from Length
subclasses (the only expressions of nontrivial complexity,
everything else which is not a shorthand or text-decoration is
either a single token or a function call). The relevant class
is LinearCombinationLength.
Unfortunately, I can't find the expression parser, but I recall
I've seen it.

The seemingly clever but ultimately misguided attempt to press
all property handling including shorthands, font-family lists
and text-decoration in a unified framework has lead to a number
of kludges which may make reengineering the whole stuff a bit


Reply via email to