OptimizeChooseText
class OptimizeChooseText extends AbstractChooseOptimization
Constants
XMLNS_XSL |
XSL namespace |
Properties
protected Document | $ownerDocument | from AbstractNormalization | |
protected array | $queries | {@inheritdoc} | from AbstractChooseOptimization |
protected Element | $choose | from AbstractChooseOptimization |
Methods
Apply this normalization rule to given template
Create an xsl:text element or a text node in current template
Retrieve a list of attributes from given element
Return a list the xsl:when and xsl:otherwise children of current xsl:choose element
Test whether current xsl:choose element has an xsl:otherwise child
Test whether current xsl:choose element has no content besides xsl:when and xsl:otherwise
Test whether two elements have the same start tag
Optimize the current xsl:choose element
Adjust length of the text nodes of current xsl:choose element's branches
Compute the number of leading characters common to all strings
Get the text content of the firstChild/lastChild of each branch if they are all text nodes
Move common leading text outside of current choose
Move common trailing text outside of current choose
Details
in
AbstractNormalization at line 40
void
normalize(Element $template)
Apply this normalization rule to given template
in
AbstractNormalization at line 57
protected Text
createPolymorphicText(string $textContent)
Create an xsl:text element or a text node in current template
in
AbstractNormalization at line 69
protected array
getNodes()
Query and return a list of nodes of interest
in
AbstractNormalization at line 83
protected bool
isXsl(DOMNode $node, string $localName = null)
Test whether given node is an XSL element
in
AbstractNormalization at line 94
protected string
lowercase(string $str)
Make an ASCII string lowercase
in
AbstractNormalization at line 99
protected void
normalizeAttribute(Attr $attribute)
No description
in
AbstractNormalization at line 103
protected void
normalizeCdataSection(CdataSection $comment)
No description
in
AbstractNormalization at line 107
protected void
normalizeComment(Comment $comment)
No description
in
AbstractChooseOptimization at line 87
protected void
normalizeElement(Element $element)
No description
in
AbstractNormalization at line 115
protected void
normalizeNode(DOMNode $node)
No description
in
AbstractNormalization at line 139
protected void
normalizeText(Text $node)
No description
in
AbstractChooseOptimization at line 103
protected void
reset()
Reset this instance's properties after usage
in
AbstractChooseOptimization at line 30
protected array
getAttributes(Element $element)
Retrieve a list of attributes from given element
in
AbstractChooseOptimization at line 47
protected array
getBranches()
Return a list the xsl:when and xsl:otherwise children of current xsl:choose element
in
AbstractChooseOptimization at line 57
protected bool
hasOtherwise()
Test whether current xsl:choose element has an xsl:otherwise child
in
AbstractChooseOptimization at line 67
protected bool
isEmpty()
Test whether current xsl:choose element has no content besides xsl:when and xsl:otherwise
in
AbstractChooseOptimization at line 79
protected bool
isEqualTag(Element $el1, Element $el2)
Test whether two elements have the same start tag
at line 87
protected void
optimizeChoose()
Optimize the current xsl:choose element
at line 23
protected void
adjustTextNodes(string $childType, int $pos, int $len = PHP_INT_MAX)
Adjust length of the text nodes of current xsl:choose element's branches
at line 42
protected int
getPrefixLength(array $strings)
Compute the number of leading characters common to all strings
at line 69
protected string[]
getTextContent(string $childType)
Get the text content of the firstChild/lastChild of each branch if they are all text nodes
at line 103
protected void
optimizeLeadingText()
Move common leading text outside of current choose
at line 124
protected void
optimizeTrailingText()
Move common trailing text outside of current choose