Skip to content

Commit a8ae3ba

Browse files
authored
Merge pull request #2653 from CortexFoundation/dev
rlp: return Iterator as non-pointer
2 parents 0383d9e + 409ec07 commit a8ae3ba

2 files changed

Lines changed: 8 additions & 8 deletions

File tree

rlp/iterator.go

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff 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.

rlp/raw.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff 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.

0 commit comments

Comments
 (0)