public RangeIteratorMain GetIterator(Session session) { RangeIteratorMain iterator = this.IsRightJoin ? new RangeIteratorRight(session, this, null) : new RangeIteratorMain(session, this); session.sessionContext.SetRangeIterator(iterator); return(iterator); }
public static RangeIteratorMain GetIterator(Session session, RangeVariable[] rangeVars) { if (rangeVars.Length == 1) { return(rangeVars[0].GetIterator(session)); } RangeIteratorMain[] rangeIterators = new RangeIteratorMain[rangeVars.Length]; for (int i = 0; i < rangeVars.Length; i++) { rangeIterators[i] = rangeVars[i].GetIterator(session); } return(new RangeIteratorJoined(rangeIterators)); }