MediaWiki REL1_37
PPNode_Hash_Tree Class Reference
Inheritance diagram for PPNode_Hash_Tree:
Collaboration diagram for PPNode_Hash_Tree:

Public Member Functions

 __construct (array $store, $index)
 Construct an object using the data from $store[$index].
 
 __toString ()
 Convert a node to XML, for debugging.
 
 getChildren ()
 
 getChildrenOfType ( $name)
 Get an array of the children with a given node name.
 
 getFirstChild ()
 Get the first child, or false if there is none.
 
 getLength ()
 
 getName ()
 
 getNextSibling ()
 Get the next sibling, or false if there is none.
 
 getRawChildren ()
 Get the raw child array.
 
 item ( $i)
 
 splitArg ()
 Split a "<part>" node into an associative array containing:
 
 splitExt ()
 Split an "<ext>" node into an associative array containing name, attr, inner and close All values in the resulting array are PPNodes.
 
 splitHeading ()
 Split an "<h>" node.
 
 splitTemplate ()
 Split a "<template>" or "<tplarg>" node.
 

Static Public Member Functions

static factory (array $store, $index)
 Construct an appropriate PPNode_Hash_* object with a class that depends on what is at the relevant store index.
 
static splitRawArg (array $children)
 Like splitArg() but for a raw child array.
 
static splitRawExt (array $children)
 Like splitExt() but for a raw child array.
 
static splitRawHeading (array $children)
 Like splitHeading() but for a raw child array.
 
static splitRawTemplate (array $children)
 Like splitTemplate() but for a raw child array.
 

Public Attributes

string $name
 
const CHILDREN = 1
 The offset of the child list within descriptors, used in some places for readability.
 
const NAME = 0
 The offset of the name within descriptors, used in some places for readability.
 

Private Attributes

int $index
 The index into $this->store which contains the descriptor of this node.
 
array $rawChildren
 The store array for children of this node.
 
array $store
 The store array for the siblings of this node, including this node itself.
 

Detailed Description

Definition at line 26 of file PPNode_Hash_Tree.php.

Constructor & Destructor Documentation

◆ __construct()

PPNode_Hash_Tree::__construct ( array  $store,
  $index 
)

Construct an object using the data from $store[$index].

The rest of the store array can be accessed via getNextSibling().

Parameters
array$store
int$index

Definition at line 70 of file PPNode_Hash_Tree.php.

References $index, and $store.

Member Function Documentation

◆ __toString()

PPNode_Hash_Tree::__toString ( )

Convert a node to XML, for debugging.

Returns
string

Definition at line 109 of file PPNode_Hash_Tree.php.

References getFirstChild().

◆ factory()

static PPNode_Hash_Tree::factory ( array  $store,
  $index 
)
static

Construct an appropriate PPNode_Hash_* object with a class that depends on what is at the relevant store index.

Parameters
array$store
int$index
Returns
PPNode_Hash_Tree|PPNode_Hash_Attr|PPNode_Hash_Text|false
Exceptions
MWException

Definition at line 85 of file PPNode_Hash_Tree.php.

References $index, and $store.

Referenced by getChildren(), getChildrenOfType(), getFirstChild(), PPNode_Hash_Attr\getNextSibling(), PPNode_Hash_Text\getNextSibling(), and getNextSibling().

◆ getChildren()

PPNode_Hash_Tree::getChildren ( )
Returns
PPNode_Hash_Array

Implements PPNode.

Definition at line 129 of file PPNode_Hash_Tree.php.

References factory().

◆ getChildrenOfType()

PPNode_Hash_Tree::getChildrenOfType (   $name)

Get an array of the children with a given node name.

Parameters
string$name
Returns
PPNode_Hash_Array

Implements PPNode.

Definition at line 169 of file PPNode_Hash_Tree.php.

References $name, and factory().

◆ getFirstChild()

PPNode_Hash_Tree::getFirstChild ( )

Get the first child, or false if there is none.

Note that this will return a temporary proxy object: different instances will be returned if this is called more than once on the same node.

Returns
PPNode_Hash_Tree|PPNode_Hash_Attr|PPNode_Hash_Text|false

Implements PPNode.

Definition at line 144 of file PPNode_Hash_Tree.php.

References factory().

Referenced by __toString().

◆ getLength()

PPNode_Hash_Tree::getLength ( )
Returns
bool

Implements PPNode.

Definition at line 190 of file PPNode_Hash_Tree.php.

◆ getName()

PPNode_Hash_Tree::getName ( )
Returns
string

Implements PPNode.

Definition at line 205 of file PPNode_Hash_Tree.php.

References $name.

◆ getNextSibling()

PPNode_Hash_Tree::getNextSibling ( )

Get the next sibling, or false if there is none.

Note that this will return a temporary proxy object: different instances will be returned if this is called more than once on the same node.

Returns
PPNode_Hash_Tree|PPNode_Hash_Attr|PPNode_Hash_Text|false

Implements PPNode.

Definition at line 159 of file PPNode_Hash_Tree.php.

References factory().

◆ getRawChildren()

PPNode_Hash_Tree::getRawChildren ( )

Get the raw child array.

For internal use.

Returns
array

Definition at line 183 of file PPNode_Hash_Tree.php.

References $rawChildren.

◆ item()

PPNode_Hash_Tree::item (   $i)
Parameters
int$i
Returns
bool

Implements PPNode.

Definition at line 198 of file PPNode_Hash_Tree.php.

◆ splitArg()

PPNode_Hash_Tree::splitArg ( )

Split a "<part>" node into an associative array containing:

Exceptions
MWException
Returns
array

Implements PPNode.

Definition at line 218 of file PPNode_Hash_Tree.php.

References splitRawArg().

◆ splitExt()

PPNode_Hash_Tree::splitExt ( )

Split an "<ext>" node into an associative array containing name, attr, inner and close All values in the resulting array are PPNodes.

Inner and close are optional.

Exceptions
MWException
Returns
array

Implements PPNode.

Definition at line 261 of file PPNode_Hash_Tree.php.

References splitRawExt().

◆ splitHeading()

PPNode_Hash_Tree::splitHeading ( )

Split an "<h>" node.

Exceptions
MWException
Returns
array

Implements PPNode.

Definition at line 303 of file PPNode_Hash_Tree.php.

References splitRawHeading().

◆ splitRawArg()

static PPNode_Hash_Tree::splitRawArg ( array  $children)
static

Like splitArg() but for a raw child array.

For internal use only.

Parameters
array$children
Returns
array

Definition at line 227 of file PPNode_Hash_Tree.php.

References CHILDREN, and NAME.

Referenced by splitArg().

◆ splitRawExt()

static PPNode_Hash_Tree::splitRawExt ( array  $children)
static

Like splitExt() but for a raw child array.

For internal use only.

Parameters
array$children
Returns
array

Definition at line 270 of file PPNode_Hash_Tree.php.

Referenced by PPFrame_Hash\expand(), and splitExt().

◆ splitRawHeading()

static PPNode_Hash_Tree::splitRawHeading ( array  $children)
static

Like splitHeading() but for a raw child array.

For internal use only.

Parameters
array$children
Returns
array

Definition at line 315 of file PPNode_Hash_Tree.php.

References CHILDREN.

Referenced by PPFrame_Hash\expand(), and splitHeading().

◆ splitRawTemplate()

static PPNode_Hash_Tree::splitRawTemplate ( array  $children)
static

Like splitTemplate() but for a raw child array.

For internal use only.

Parameters
array$children
Returns
array

Definition at line 349 of file PPNode_Hash_Tree.php.

Referenced by PPFrame_Hash\expand(), and splitTemplate().

◆ splitTemplate()

PPNode_Hash_Tree::splitTemplate ( )

Split a "<template>" or "<tplarg>" node.

Exceptions
MWException
Returns
array

Definition at line 339 of file PPNode_Hash_Tree.php.

References splitRawTemplate().

Member Data Documentation

◆ $index

int PPNode_Hash_Tree::$index
private

The index into $this->store which contains the descriptor of this node.

Definition at line 49 of file PPNode_Hash_Tree.php.

Referenced by __construct(), and factory().

◆ $name

string PPNode_Hash_Tree::$name

Definition at line 29 of file PPNode_Hash_Tree.php.

Referenced by getChildrenOfType(), and getName().

◆ $rawChildren

array PPNode_Hash_Tree::$rawChildren
private

The store array for children of this node.

It is "raw" in the sense that nodes are two-element arrays ("descriptors") rather than PPNode_Hash_* objects.

Definition at line 37 of file PPNode_Hash_Tree.php.

Referenced by getRawChildren().

◆ $store

array PPNode_Hash_Tree::$store
private

The store array for the siblings of this node, including this node itself.

Definition at line 43 of file PPNode_Hash_Tree.php.

Referenced by __construct(), and factory().

◆ CHILDREN

const PPNode_Hash_Tree::CHILDREN = 1

The offset of the child list within descriptors, used in some places for readability.

Definition at line 61 of file PPNode_Hash_Tree.php.

Referenced by PPNode_Hash_Attr\__construct(), splitRawArg(), and splitRawHeading().

◆ NAME

const PPNode_Hash_Tree::NAME = 0

The offset of the name within descriptors, used in some places for readability.

Definition at line 55 of file PPNode_Hash_Tree.php.

Referenced by PPNode_Hash_Attr\__construct(), and splitRawArg().


The documentation for this class was generated from the following file: