示例#1
0
 public RASTElementDescentantsFlattenEventIterator(RASTElement astNode,
                                                   RASTGenericIteratorEvents events, object info = null)
 {
     m_Event = events;
     m_node  = astNode as RASTComposite;
     if (m_node == null)
     {
         throw new Exception("Iterator cannot iterate over leaf nodes");
     }
 }
示例#2
0
 public RASTAbstractVisitor(IAbstractASTIteratorsFactory iteratorFactory = null, RASTGenericIteratorEvents events = null)
 {
     if (iteratorFactory == null)
     {
         m_iteratorFactory = new RASTAbstractConcreteIteratorFactory();
     }
     else
     {
         m_iteratorFactory = iteratorFactory;
     }
     if (events == null)
     {
         m_events = new RASTGenericIteratorEvents();
     }
     else
     {
         m_events = events;
     }
 }
示例#3
0
 /// <summary>
 /// Accepts the event iterator.
 /// </summary>
 /// <param name="iteratorFactory">The iterator factory.</param>
 /// <returns></returns>
 public abstract RAbstractIterator <RASTElement> AcceptEventIterator(RASTAbstractConcreteIteratorFactory iteratorFactory,
                                                                     RASTGenericIteratorEvents events, object info = null);
 public virtual RAbstractIterator <RASTElement> CreateParenthesisIteratorEvents(RASTElement element,
                                                                                RASTGenericIteratorEvents events, object info = null)
 {
     return(CreateIteratorASTElementDescentantsFlattenEvents(element, events, info));
 }
 public virtual RAbstractIterator <RASTElement> CreateMultiplicationOrDivisionBinaryIteratorEvents(RASTElement element,
                                                                                                   RASTGenericIteratorEvents events, object info = null)
 {
     return(CreateIteratorASTElementDescentantsFlattenEvents(element, events, info));
 }
 public virtual RAbstractIterator <RASTElement> CreateSingleDoubleColonsOperatorsIteratorEvents(RASTElement element,
                                                                                                RASTGenericIteratorEvents events, object info = null)
 {
     return(CreateIteratorASTElementDescentantsFlattenEvents(element, events, info));
 }
示例#7
0
 public virtual RAbstractIterator <RASTElement> CreateIteratorASTElementDescentantsContextEvents(RASTElement element,
                                                                                                 RASTGenericIteratorEvents events, object info = null)
 {
     return(new RASTElementDescentantsContextEventIterator(element, events, info));
 }