예제 #1
0
 internal Enumerator(ColaStore <T> items, bool reverse)
 {
     m_items   = items;
     m_reverse = reverse;
     m_cursors = ColaStore.CreateCursors(m_items.Count, out m_min);
     m_max     = m_cursors.Length - 1;
     m_current = default(T);
 }
예제 #2
0
            internal Iterator(T[][] levels, int count, IComparer <T> comparer)
            {
                Contract.Requires(levels != null && count >= 0 && comparer != null);
                m_levels   = levels;
                m_count    = count;
                m_comparer = comparer;

                m_cursors = ColaStore.CreateCursors(m_count, out m_min);
            }
예제 #3
0
 void System.Collections.IEnumerator.Reset()
 {
     m_cursors = ColaStore.CreateCursors(m_items.Count, out m_min);
     m_max     = m_cursors.Length - 1;
     m_current = default(T);
 }