Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ MoveNext()

override bool System.Linq.Enumerable.DistinctIterator< TSource >.MoveNext ( )
inline

Implements System.Collections.IEnumerator.

Definition at line 805 of file Enumerable.cs.

806 {
807 int state = _state;
808 TSource current;
809 if (state != 1)
810 {
811 if (state == 2)
812 {
813 while (_enumerator.MoveNext())
814 {
815 current = _enumerator.Current;
816 if (_set.Add(current))
817 {
818 _current = current;
819 return true;
820 }
821 }
822 }
823 Dispose();
824 return false;
825 }
827 if (!_enumerator.MoveNext())
828 {
829 Dispose();
830 return false;
831 }
832 current = _enumerator.Current;
834 _set.Add(current);
835 _current = current;
836 _state = 2;
837 return true;
838 }
void ICollection< T >. Add(T item)
Definition HashSet.cs:225
readonly IEqualityComparer< TSource > _comparer
readonly IEnumerable< TSource > _source

References System.Linq.Enumerable.DistinctIterator< TSource >._comparer, System.Linq.Enumerable.Iterator< TSource >._current, System.Linq.Enumerable.DistinctIterator< TSource >._enumerator, System.Linq.Enumerable.DistinctIterator< TSource >._set, System.Linq.Enumerable.DistinctIterator< TSource >._source, System.Linq.Enumerable.Iterator< TSource >._state, System.Collections.Generic.HashSet< T >.Add(), System.Collections.IEnumerator.Current, System.Linq.Enumerable.DistinctIterator< TSource >.Dispose(), System.Collections.IEnumerable.GetEnumerator(), System.Collections.IEnumerator.MoveNext(), and System.state.