public bool MoveNext() { AssertNotDisposed(this); Inner.AssertGenerationMatch(Generation); var columnsValue = Inner.Columns; if (Index >= columnsValue.Count) { return(false); } Index++; while (Index < columnsValue.Count) { if (columnsValue[Index].HasName) { return(true); } Index++; } return(false); }
public void Reset() { AssertNotDisposed(this); Row?.AssertGenerationMatch(ExpectedGeneration); NextIndex = 0; }
public bool MoveNext() { AssertNotDisposed(this); Row.AssertGenerationMatch(ExpectedGeneration); var trueWidth = Length ?? Row.Width; var ix = NextIndex; if (ix < trueWidth) { var trueIx = ix; trueIx += Offset ?? 0; if (Row.HasNames) { var name = Row.Names[trueIx]; _Current = ColumnIdentifier.CreateInner(ix, name, null); } else { _Current = ColumnIdentifier.Create(ix); } NextIndex++; return(true); } return(false); }
public IEnumerator <string> GetEnumerator() { Inner.AssertGenerationMatch(Generation); return(new DynamicRowMemberNameEnumerator(Inner)); }
public IEnumerator <T> GetEnumerator() { Row.AssertGenerationMatch(Generation); return(new DynamicRowEnumerator <T>(Row, DependsOn, Offset, Length)); }
public IEnumerator <object?> GetEnumerator() { Row.AssertGenerationMatch(Generation); return(new PassthroughRowEnumerator(Row, DependsOn, Offset, Length)); }