Package eu.bandm.tools.xslt.base
Class MultiTypeNodeList
java.lang.Object
eu.bandm.tools.tdom.runtime.TypedNode<TypedExtension>
eu.bandm.tools.tdom.runtime.TypedSubstantial<TypedExtension>
eu.bandm.tools.xslt.base.MultiTypeNodeList
- All Implemented Interfaces:
Cloneable
Holds the contents of one future result element, as long as it is incomplete
and the tdom element can not yet be constructed.
This can be (1) because the result element contains at least
one xslt element, or (2) at least one calculated attribute
(
Used in three roles: (1) Part of the xslt code. Here one particular instance is always the content model of one particular xslt element. This relation is realized non-invasively, but by
(2) During the evaluating process of the xslt code, as an intermediate storage, which will be transformed bottom-up and finally be replaced by a result element. There it acts as a "stack frame", and is our realization of "result tree fragments".
(3) As the top-level result of an xslt application.
AttributeValueTemplate), or (3) one of its descendants does so.
Used in three roles: (1) Part of the xslt code. Here one particular instance is always the content model of one particular xslt element. This relation is realized non-invasively, but by
Templates.result_subtrees.
(2) During the evaluating process of the xslt code, as an intermediate storage, which will be transformed bottom-up and finally be replaced by a result element. There it acts as a "stack frame", and is our realization of "result tree fragments".
(3) As the top-level result of an xslt application.
Some fields are only needed in role(2); this could be modelled as a sub-class.
The processing is supported by CombinedDumper and CombinedVisitor.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumThe static info, how often a MixedContentContainer must be evaluated.static classCallsMultiTypeNodeList.PCDataOnlyVisitor.action(String)on all contained character data.Nested classes/interfaces inherited from class eu.bandm.tools.tdom.runtime.TypedNode
TypedNode.ParseListener<E extends TypedElement<?,?>> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidvoiddump()/voiddump(PrintStream p) /voidencode(EncodingOutputStream out, TypedExtension ext) Abstract fall-back method which MUST be overridden and always throws an Exception.static MultiTypeNodeList.frequencyReturn the maximum frequency (constant < once < mixed < always).static MultiTypeNodeList.frequencyReturn the minimum frequency (constant < once < mixed < always).ATTENTION does not travel transparently through embedded xslt elements; is inteded to collect only from result fragments.protected MultiTypeNodeListCopies all data but NOT the subnodes, which must be done explicitly by caller.toString()Methods inherited from class eu.bandm.tools.tdom.runtime.TypedSubstantial
dumpFollowingEthereals, dumpPrecedingEthereals, getFollowingEthereals, getPrecedingEthereals, readFollowingEthereals, readPrecedingEtherealsMethods inherited from class eu.bandm.tools.tdom.runtime.TypedNode
asBigDecimal, asBigDecimal, asBigDecimal, asBigDecimal, asBigInteger, asBigInteger, asBigInteger, asBigInteger, asBoolean, asBoolean, asDouble, asDouble, asDouble, asDouble, asFloat, asFloat, asFloat, asFloat, asHexInt, asHexInt, asHexInt, asHexInt, asInt, asInt, asInt, asInt, asLong, asLong, asLong, asLong, asTrimmedString, asTrimmedString, asTrimmedString, asTrimmedString, checkPlus, checkPlus, checkStar, checkStar, checkStrict, encode, encodeOptional, encodePlus, encodePlus, encodeStar, encodeStar, extractEthereals, getLocation, getPCData, setLocation, setLocation, setLocation
-
Constructor Details
-
MultiTypeNodeList
public MultiTypeNodeList()
-
-
Method Details
-
f_max
public static MultiTypeNodeList.frequency f_max(MultiTypeNodeList.frequency f1, MultiTypeNodeList.frequency f2) Return the maximum frequency (constant < once < mixed < always). -
f_min
public static MultiTypeNodeList.frequency f_min(MultiTypeNodeList.frequency f1, MultiTypeNodeList.frequency f2) Return the minimum frequency (constant < once < mixed < always). -
shallowCopy
Copies all data but NOT the subnodes, which must be done explicitly by caller. -
dump
public void dump()/ -
dump
/ -
getDeepPCData
ATTENTION does not travel transparently through embedded xslt elements; is inteded to collect only from result fragments.- Specified by:
getDeepPCDatain classTypedSubstantial<TypedExtension>
-
_getDeepPCData
-
toString
-
encode
Description copied from class:TypedNodeAbstract fall-back method which MUST be overridden and always throws an Exception.- Specified by:
encodein classTypedNode<TypedExtension>
-