File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -25,21 +25,21 @@ type Iterator struct {
2525}
2626
2727// NewListIterator creates an iterator for the (list) represented by data.
28- func NewListIterator (data RawValue ) (* Iterator , error ) {
28+ func NewListIterator (data RawValue ) (Iterator , error ) {
2929 k , t , c , err := readKind (data )
3030 if err != nil {
31- return nil , err
31+ return Iterator {} , err
3232 }
3333 if k != List {
34- return nil , ErrExpectedList
34+ return Iterator {} , ErrExpectedList
3535 }
36- it := & Iterator { data : data [ t : t + c ], offset : int (t )}
36+ it := newIterator ( data [ t : t + c ], int (t ))
3737 return it , nil
3838
3939}
4040
41- func newIterator (data []byte ) * Iterator {
42- return & Iterator {data : data }
41+ func newIterator (data []byte , initialOffset int ) Iterator {
42+ return Iterator {data : data , offset : initialOffset }
4343}
4444
4545// Next forwards the iterator one step.
Original file line number Diff line number Diff line change @@ -122,8 +122,8 @@ func (r *RawList[T]) Empty() bool {
122122// ContentIterator returns an iterator over the content of the list.
123123// Note the offsets returned by iterator.Offset are relative to the
124124// Content bytes of the list.
125- func (r * RawList [T ]) ContentIterator () * Iterator {
126- return newIterator (r .Content ())
125+ func (r * RawList [T ]) ContentIterator () Iterator {
126+ return newIterator (r .Content (), 0 )
127127}
128128
129129// Append adds an item to the end of the list.
You can’t perform that action at this time.
0 commit comments