CMS 3D CMS Logo

Public Member Functions | Public Attributes | Private Attributes

SequenceTypes::ExpandVisitor Class Reference

List of all members.

Public Member Functions

def __init__
def enter
def leave
def result

Public Attributes

 l

Private Attributes

 _type

Detailed Description

Expands the sequence into leafs and UnaryOperators 

Definition at line 458 of file SequenceTypes.py.


Constructor & Destructor Documentation

def SequenceTypes::ExpandVisitor::__init__ (   self,
  type 
)

Definition at line 460 of file SequenceTypes.py.

00461                             :
00462         self._type = type
        self.l = []

Member Function Documentation

def SequenceTypes::ExpandVisitor::enter (   self,
  visitee 
)

Definition at line 463 of file SequenceTypes.py.

00464                            :
00465         if isinstance(visitee,_SequenceLeaf):
            self.l.append(visitee)
def SequenceTypes::ExpandVisitor::leave (   self,
  visitee 
)

Definition at line 466 of file SequenceTypes.py.

00467                             :
00468         if isinstance(visitee,_UnarySequenceOperator):
            self.l[-1] = visitee
def SequenceTypes::ExpandVisitor::result (   self)

Definition at line 469 of file SequenceTypes.py.

00470                     :
00471         # why doesn't (sum(self.l) work?
00472         seq = self.l[0]
00473         if len(self.l) > 1:
00474             for el in self.l[1:]:
00475                 seq += el
00476         return self._type(seq)
00477 
00478     


Member Data Documentation

Definition at line 460 of file SequenceTypes.py.

Definition at line 460 of file SequenceTypes.py.