aboutsummaryrefslogtreecommitdiffstats
path: root/trie/iterator_test.go
Commit message (Collapse)AuthorAgeFilesLines
* trie: add start key to NodeIterator constructorsFelix Lange2017-04-251-10/+55
| | | | | | | | | The 'step' method is split into two parts, 'peek' and 'push'. peek returns the next state but doesn't make it current. The end of iteration was previously tracked by setting 'trie' to nil. End of iteration is now tracked using the 'iteratorEnd' error, which is slightly cleaner and requires less code.
* trie: clean up iterator constructorsFelix Lange2017-04-251-7/+7
| | | | | | | Make it so each iterator has exactly one public constructor: - NodeIterators can be created through a method. - Iterators can be created through NewIterator on any NodeIterator.
* trie: implement unionIterator (#14312)Nick Johnson2017-04-131-24/+73
|
* trie: add difference iterator (#3637)Nick Johnson2017-02-231-3/+60
| | | | | This PR implements a differenceIterator, which allows iterating over trie nodes that exist in one trie but not in another. This is a prerequisite for most GC strategies, in order to find obsolete nodes.
* all: gofmt -w -sFelix Lange2017-01-061-1/+1
|
* core, trie: replace state caches with trie journalFelix Lange2016-09-281-6/+45
|
* core/state, trie: surface iterator entry hashesPéter Szilágyi2016-02-161-1/+31
|
* core, trie: new trieFelix Lange2015-09-231-3/+3
|
* all: fix license headers one more timeFelix Lange2015-07-241-1/+1
| | | | I forgot to update one instance of "go-ethereum" in commit 3f047be5a.
* all: update license headers to distiguish GPL/LGPLFelix Lange2015-07-231-4/+4
| | | | | All code outside of cmd/ is licensed as LGPL. The headers now reflect this by calling the whole work "the go-ethereum library".
* all: update license informationFelix Lange2015-07-071-0/+16
|
* Moved ptrie => trie. Removed old trieobscuren2015-01-081-0/+33