Package pyxb :: Package utils :: Module fac :: Class All
[hide private]
[frames] | no frames]

type All

source code

object --+        
         |        
      Node --+    
             |    
 MultiTermNode --+
                 |
object --+       |
         |       |
      Node --+   |
             |   |
      LeafNode --+
                 |
                All

A term that is an unordered sequence of terms.

Note that the inheritance structure for this node is unusual. It has multiple children when it is treated as a term tree, but is considered a leaf node when constructing an automaton.

Instance Methods [hide private]
 
__init__(self, *terms, **kw)
Term that collects an unordered sequence of terms.
source code
 
_nullable(self)
Abstract method that defines nullable for the subclass.
source code
 
__str__(self) source code

Inherited from MultiTermNode: clone

Inherited from MultiTermNode (private): _walkTermTree

Inherited from LeafNode (private): _first, _follow, _last

Inherited from Node: buildAutomaton, counterSubPositions, reset, walkTermTree

Inherited from Node (private): _facToString

Class Methods [hide private]
 
CreateTermTree(cls, *terms)
Create a term tree that implements unordered catenation of the terms.
source code
Class Variables [hide private]
  _Precedence = 0
An integral value used for parenthesizing expressions.

Inherited from Node: INCREMENT, RESET

Properties [hide private]

Inherited from MultiTermNode: terms

Inherited from Node: counterPositions, first, follow, last, metadata, nodePosMap, nullable, posNodeMap

Method Details [hide private]

__init__(self, *terms, **kw)
(Constructor)

source code 

Term that collects an unordered sequence of terms.

The terms are provided as arguments. All must be instances of a subclass of Node.

Parameters:
  • metadata - Any application-specific metadata retained in the term tree for transfer to the resulting automaton.
Overrides: Node.__init__

_nullable(self)

source code 

Abstract method that defines nullable for the subclass.

The return value should be True or False.

Overrides: Node._nullable
(inherited documentation)

CreateTermTree(cls, *terms)
Class Method

source code 

Create a term tree that implements unordered catenation of the terms.

This expansion results in a standard choice/sequence term tree, at the cost of quadratic state expansion because terms are cloned as required to satisfy the tree requirements of the term tree.

Parameters:
  • terms - The tuple of terms that are elements of an accepted sequence.
Returns:
A term tree comprising a choice between sequences that connect each term to the unordered catenation of the remaining terms.

__str__(self)
(Informal representation operator)

source code 
Overrides: object.__str__
(inherited documentation)