Zeta Components - high quality PHP components

Zeta Components Manual :: Docs For Class ezcDocumentRstXhtmlVisitor

Document::ezcDocumentRstXhtmlVisitor

Class ezcDocumentRstXhtmlVisitor

HTML visitor for the RST AST.

Source for this file: /Document/src/document/rst/visitor/xhtml.php

ezcDocumentRstVisitor
   |
   --ezcDocumentRstXhtmlVisitor
Version:   //autogen//

Descendants

Child Class Description
ezcDocumentRstXhtmlBodyVisitor HTML visitor for the RST AST, which only produces contents to be embedded somewhere into the body of an existing HTML document.

Inherited Constants

From ezcDocumentRstVisitor:
ezcDocumentRstVisitor::DUBLICATE    Duplicate reference target. Will throw an error on use.
ezcDocumentRstVisitor::UNUSED    Unused reference target
ezcDocumentRstVisitor::USED    Used reference target

Member Variables

protected array $complexVisitMapping = array(
'ezcDocumentRstSectionNode' => 'visitSection',
'ezcDocumentRstTextLineNode' => 'visitText',
'ezcDocumentRstMarkupInterpretedTextNode' => 'visitInterpretedTextNode',
'ezcDocumentRstExternalReferenceNode' => 'visitExternalReference',
'ezcDocumentRstMarkupSubstitutionNode' => 'visitSubstitutionReference',
'ezcDocumentRstTargetNode' => 'visitInlineTarget',
'ezcDocumentRstAnonymousLinkNode' => 'visitAnonymousReference',
'ezcDocumentRstBlockquoteNode' => 'visitBlockquote',
'ezcDocumentRstBulletListListNode' => 'visitBulletList',
'ezcDocumentRstEnumeratedListListNode' => 'visitEnumeratedList',
'ezcDocumentRstReferenceNode' => 'visitInternalFootnoteReference',
'ezcDocumentRstLineBlockNode' => 'visitLineBlock',
'ezcDocumentRstLineBlockLineNode' => 'visitLineBlockLine',
'ezcDocumentRstLiteralNode' => 'visitText',
'ezcDocumentRstCommentNode' => 'visitComment',
'ezcDocumentRstDefinitionListNode' => 'visitDefinitionListItem',
'ezcDocumentRstTableCellNode' => 'visitTableCell',
'ezcDocumentRstFieldListNode' => 'visitFieldListItem',
'ezcDocumentRstDirectiveNode' => 'visitDirective',
)

Mapping of class names to internal visitors for the respective nodes.
protected int $depth = 0
Current depth in document.
protected DOMDocument $document
DOM document
protected DOMElement $head
Reference to head node
protected ezcDocumentHtmlConverterOptions $options
HTML rendering options
protected array $simpleVisitMapping = array(
'ezcDocumentRstParagraphNode' => 'p',
'ezcDocumentRstMarkupEmphasisNode' => 'em',
'ezcDocumentRstMarkupStrongEmphasisNode' => 'strong',
'ezcDocumentRstMarkupInlineLiteralNode' => 'code',
'ezcDocumentRstBulletListNode' => 'li',
'ezcDocumentRstEnumeratedListNode' => 'li',
'ezcDocumentRstLiteralBlockNode' => 'pre',
'ezcDocumentRstTransitionNode' => 'hr',
'ezcDocumentRstDefinitionListListNode' => 'dl',
'ezcDocumentRstTableNode' => 'table',
'ezcDocumentRstTableHeadNode' => 'thead',
'ezcDocumentRstTableBodyNode' => 'tbody',
'ezcDocumentRstTableRowNode' => 'tr',
/*
'ezcDocumentRstMarkupInlineLiteralNode' => 'literal',
*/
)

Direct mapping of AST node class names to docbook element names.
protected array $skipNodes = array(
'ezcDocumentRstNamedReferenceNode',
'ezcDocumentRstAnonymousReferenceNode',
'ezcDocumentRstSubstitutionNode',
'ezcDocumentRstFootnoteNode',
)

Array with nodes, which can be ignored during the transformation process, they only provide additional information during preprocessing.

Inherited Member Variables

From ezcDocumentRstVisitor
protected ezcDocumentRstVisitor::$anonymousReferenceCounter
protected ezcDocumentRstVisitor::$anonymousReferences
protected ezcDocumentRstVisitor::$ast
protected ezcDocumentRstVisitor::$errors
protected ezcDocumentRstVisitor::$footnoteCounter
protected ezcDocumentRstVisitor::$footnotes
protected ezcDocumentRstVisitor::$footnoteSymbols
protected ezcDocumentRstVisitor::$namedExternalReferences
protected ezcDocumentRstVisitor::$path
protected ezcDocumentRstVisitor::$referenceCounter
protected ezcDocumentRstVisitor::$references
protected ezcDocumentRstVisitor::$rst
protected ezcDocumentRstVisitor::$substitutions
protected ezcDocumentRstVisitor::$usedIDs

Method Summary

public void __construct( $document , $path )
Create visitor from RST document handler.
protected void addStylesheets( $head )
Add stylesheets to header
public string escapeUrl( $url )
Escape all special characters in URIs
protected string generateFootnoteReferenceLink( $name , $number )
Generate footnote reference link
public mixed visit( $ast )
Docarate RST AST
protected void visitAnonymousReference( $root , $node )
Visit anonomyous reference node
protected void visitBlockquote( $root , $node )
Visit blockquotes
protected void visitBulletList( $root , $node )
Visit bullet lists
protected void visitComment( $root , $node )
Visit comment
protected void visitDefinitionListItem( $root , $node )
Visit definition list item
protected void visitDirective( $root , $node )
Visit directive
protected void visitEnumeratedList( $root , $node )
Visit enumerated lists
protected void visitExternalReference( $root , $node )
Visit external reference node
protected void visitFieldListItem( $root , $node )
Visit field list item
protected void visitFootnote( $root , $node )
Visit footnote
protected void visitInlineTarget( $root , $node )
Visit inline target node
protected void visitInternalFootnoteReference( $root , $node )
Visit internal reference node
protected void visitInterpretedTextNode( $root , $node )
Visit interpreted text node markup
protected void visitLineBlock( $root , $node )
Visit line block
protected void visitLineBlockLine( $root , $node )
Visit line block line
protected void visitNode( $root , $node )
Visit single AST node
protected void visitSection( $root , $node )
Visit section node
protected void visitTableCell( $root , $node )
Visit table cell

Inherited Methods

From ezcDocumentRstVisitor
public void ezcDocumentRstVisitor::__construct()
Create visitor from RST document handler.
protected void ezcDocumentRstVisitor::addFootnote()
Add footnote
protected void ezcDocumentRstVisitor::aggregateListItems()
Aggregate list items
protected string ezcDocumentRstVisitor::calculateId()
Get a valid identifier string
protected string ezcDocumentRstVisitor::calculateUniqueId()
Calculate unique ID
protected bool ezcDocumentRstVisitor::compareListType()
Compare two list items
public string ezcDocumentRstVisitor::getAnonymousReferenceTarget()
Get anonymous reference target
public array ezcDocumentRstVisitor::getErrors()
Return list of errors occured during visiting the document.
public string ezcDocumentRstVisitor::getNamedExternalReference()
Return named external reference target
public ezcDocumentRstFootnoteNode ezcDocumentRstVisitor::hasFootnoteTarget()
Check for internal footnote reference target
public string ezcDocumentRstVisitor::hasReferenceTarget()
Check for internal reference target
public string ezcDocumentRstVisitor::nodeToString()
Transform a node tree into a string
protected void ezcDocumentRstVisitor::preProcessAst()
Pre process AST
protected void ezcDocumentRstVisitor::substitute()
Get substitution contents
protected string ezcDocumentRstVisitor::tokenListToString()
Get string from token list.
public void ezcDocumentRstVisitor::triggerError()
Trigger visitor error
public mixed ezcDocumentRstVisitor::visit()
Docarate RST AST
protected void ezcDocumentRstVisitor::visitChildren()
Visit children
protected void ezcDocumentRstVisitor::visitSubstitutionReference()
Visit substitution reference node
protected void ezcDocumentRstVisitor::visitText()
Visit text node

Methods

__construct

void __construct( ezcDocumentRst $document , string $path )

Create visitor from RST document handler.

Parameters:
Name Type Description
$document ezcDocumentRst
$path string
Redefinition of:
Method Description
ezcDocumentRstVisitor::__construct() Create visitor from RST document handler.

addStylesheets

void addStylesheets( $head )

Add stylesheets to header

Parameters:
Name Type Description
$head DOMElement

escapeUrl

string escapeUrl( string $url )

Escape all special characters in URIs

Parameters:
Name Type Description
$url string

generateFootnoteReferenceLink

string generateFootnoteReferenceLink( string $name , string $number )

Generate footnote reference link

Generate an internal target name out of the footnote name, which may contain special characters, which are not allowed for URL anchors and are converted to alphanumeric strings by this method.

Parameters:
Name Type Description
$name string
$number string

visit

mixed visit( $ast )

Docarate RST AST

Visit the RST abstract syntax tree.

Parameters:
Name Type Description
$ast ezcDocumentRstDocumentNode
Redefinition of:
Method Description
ezcDocumentRstVisitor::visit() Docarate RST AST
Redefined in descendants as:
Method Description
ezcDocumentRstXhtmlBodyVisitor::visit() Docarate RST AST 

visitAnonymousReference

void visitAnonymousReference( $root , ezcDocumentRstNode $node )

Visit anonomyous reference node

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode

visitBlockquote

void visitBlockquote( $root , ezcDocumentRstNode $node )

Visit blockquotes

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode

visitBulletList

void visitBulletList( $root , ezcDocumentRstNode $node )

Visit bullet lists

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode

visitComment

void visitComment( $root , ezcDocumentRstNode $node )

Visit comment

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode

visitDefinitionListItem

void visitDefinitionListItem( $root , ezcDocumentRstNode $node )

Visit definition list item

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode

visitDirective

void visitDirective( $root , ezcDocumentRstNode $node )

Visit directive

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode

visitEnumeratedList

void visitEnumeratedList( $root , ezcDocumentRstNode $node )

Visit enumerated lists

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode

visitExternalReference

void visitExternalReference( $root , ezcDocumentRstNode $node )

Visit external reference node

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode

visitFieldListItem

void visitFieldListItem( $root , ezcDocumentRstNode $node )

Visit field list item

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode
Redefined in descendants as:
Method Description
ezcDocumentRstXhtmlBodyVisitor::visitFieldListItem() Visit field list item 

visitFootnote

void visitFootnote( $root , ezcDocumentRstNode $node )

Visit footnote

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode

visitInlineTarget

void visitInlineTarget( $root , ezcDocumentRstNode $node )

Visit inline target node

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode

visitInternalFootnoteReference

void visitInternalFootnoteReference( $root , ezcDocumentRstNode $node )

Visit internal reference node

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode

visitInterpretedTextNode

void visitInterpretedTextNode( $root , ezcDocumentRstNode $node )

Visit interpreted text node markup

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode

visitLineBlock

void visitLineBlock( $root , ezcDocumentRstNode $node )

Visit line block

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode

visitLineBlockLine

void visitLineBlockLine( $root , ezcDocumentRstNode $node )

Visit line block line

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode

visitNode

void visitNode( $root , ezcDocumentRstNode $node )

Visit single AST node

Visit a single AST node, may be called for each node found anywhere as child. The current position in the DOMDocument is passed by a reference to the current DOMNode, which is operated on.

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode

visitSection

void visitSection( $root , ezcDocumentRstNode $node )

Visit section node

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode
Redefined in descendants as:
Method Description
ezcDocumentRstXhtmlBodyVisitor::visitSection() Visit section node 

visitTableCell

void visitTableCell( $root , ezcDocumentRstNode $node )

Visit table cell

Parameters:
Name Type Description
$root DOMNode
$node ezcDocumentRstNode
Documentation generated by phpDocumentor 1.4.3