master
0.21
issue_866
24.x
0.18
0.17
0.16
0.15
0.14
0.13
0.10
0.8
v0.21.4
v0.21.3
v0.21.3rc3
v0.21.3rc2
v0.21.2.2
v0.21.2.1
v0.21.2
v0.21.2rc7
v0.21.2rc6
v0.21.2rc5
v0.21.2rc4
v0.21.2rc3
v0.21.2rc2
v0.21.2rc1
v0.21.1
v0.21.1rc1
v0.18.1
v0.18.1rc1
v0.17.1
v0.17.1rc1
v0.16.3
v0.16.2
v0.16.2rc1
v0.16.0
v0.16.0rc1
v0.15.1
v0.15.1rc1
v0.15.0.1rc1
v0.13.3
v0.14.2
v0.14.2rc2
v0.14.2rc1
v0.13.3rc2
v0.13.3rc1
v0.13.2.1
v0.13.2
v0.13.2rc3
v0.13.2rc2
v0.13.2rc1
v0.10.3rc1
v0.10.2.2
v0.10.2.1
v0.10.2
v0.10.2rc1
v0.10.1.3
v0.10.1
v0.10.1rc3
v0.10.1.2-osxsign3
v0.10.1.2
v0.10.1.1
v0.10.1rc2
v0.10.1rc1
v0.10.0
v0.10.0.2
v0.10.0rc4
v0.10-mark12
v0.8.7.5
v0.10.0rc3
v0.10.0rc2
v0.9.4
v0.10.0rc1
v0.9.3-preview5
v0.9.3-preview4
v0.9.3
v0.8.7.4
v0.9.3rc2
v0.8.7.3
v0.9.3rc1
v0.9.2.1
v0.9.2
v0.8.7.2
v0.9.2rc2
v0.9.2rc1
v0.8.7.1
v0.8.6.9
v0.8.6.3-mark2
v0.9.0rc2
v0.9.0rc1
v0.8.6.2
v0.8.6.1
v0.8.5.3-rc8
v0.8.5.3-rc7
v0.8.5.3-rc6
v0.8.5.3-rc5
v0.8.5.3-rc4-no-mmap
v0.8.5.3-rc4
v0.8.5.3-rc3
v0.8.5.3-rc2
v0.8.5.3-rc1
v0.8.5.2-rc6
v0.8.5.2-rc5
v0.8.5.2-rc4-detect
v0.8.5.2-rc4
v0.8.5.2-rc3
v0.8.5.2-rc1
v0.8.5.2-rc2
v0.8.5.2rc1
v0.8.5-nodebloom
v0.8.5.1-macosx
v0.8.5.1-omgscrypt
v0.8.5.1-omg2
v0.8.5.1-omg1
v0.8.5
v0.8.5.1
v0.8.4.1-sse2test
v0.8.4.1-omg1
v0.8.4.1-ccsec
v0.8.4
v0.8.4.1-cc
v0.8.4.1
v0.8.4rc2
v0.8.4rc1
v0.8.3.7-ccsec
v0.8.3.7-cc
0.8.3.7-cc
v0.8.3.7
v0.8.3.6
v0.8.3.5
v0.8.3.4
v0.8.3.3
v0.8.3.2
v0.8.3.1
v0.6.9.2
v0.8.3
v0.8.2.3
v0.6.9.1
v0.6.9
v0.8.2
v0.8.2rc3
v0.8.2rc2
v0.8.2rc1
v0.8.1
v0.8.0
v0.8.0rc1
v0.7.2
v0.7.2rc2
v0.7.1
v0.7.1rc1
v0.7.0
v0.7.0rc3
v0.7.0rc2
v0.7.0rc1
v0.6.3c
v0.6.3b
v0.6.3a
v0.6.3
v0.6.3rc1
v0.6.2.2
v0.6.2.1
v0.6.2
v0.6.1
v0.6.1rc2
v0.6.1rc1
v0.6.0
v0.6.0rc6
v0.6.0rc5
v0.6.0rc4
v0.5.3
v0.6.0rc3
v0.5.3rc4
v0.6.0rc2
v0.6.0rc1
v0.5.2
v0.5.1
v0.5.1rc2
v0.5.1rc1
v0.5.0
v0.5.0rc7
v0.5.0rc6
v0.5.0rc5
v0.5.0rc4
v0.5.0rc3
v0.5.0rc2
v0.5.0rc1
v0.4.0
v0.4.00rc2
v0.4.00rc1
v0.3.24
v0.3.24rc3
v0.3.24rc2
v0.3.24rc1
v0.3.23
v0.3.23rc1
v0.3.22
v0.3.22rc6
v0.3.22rc5
v0.3.22rc4
v0.3.22rc3
v0.3.22rc2
v0.3.22rc1
v0.3.21
v0.3.21rc
v0.3.20
v0.1.5
v0.1.6test1
v0.10.3.0rc1
v0.10.4.0
v0.10.4.0rc1
v0.2.0
v0.2.10
v0.2.11
v0.2.12
v0.2.13
v0.2.2
v0.2.4
v0.2.5
v0.2.6
v0.2.7
v0.2.8
v0.2.9
v0.21.3rc1
v0.2rc2
v0.3.0
v0.3.1
v0.3.10
v0.3.11_notexact
v0.3.12
v0.3.13
v0.3.14
v0.3.15
v0.3.17
v0.3.18
v0.3.19
v0.3.1rc1
v0.3.2
v0.3.20.01_closest
v0.3.20.2_closest
v0.3.3
v0.3.6
v0.3.7
v0.3.8
v0.3rc1
v0.3rc2
v0.3rc4
${ noResults }
2 Commits (28f11e9406b185dc87144f1f29af0d93eb115b4e)
Author | SHA1 | Message | Date |
---|---|---|---|
Kaz Wesley | d3af342276 |
prepend license statement to indirectmap
Add statement about MIT licensing to indirectmap.h. I forgot the license preamble when I originally wrote the file. |
8 years ago |
Kaz Wesley | 9805f4af7e |
mapNextTx: use pointer as key, simplify value
Saves about 10% of application memory usage once the mempool warms up. Since the mempool is DynamicUsage-regulated, this will translate to a larger mempool in the same amount of space. Map value type: eliminate the vin index; no users of the map need to know which input of the transaction is spending the prevout. Map key type: replace the COutPoint with a pointer to a COutPoint. A COutPoint is 36 bytes, but each COutPoint is accessible from the same map entry's value. A trivial DereferencingComparator functor allows indirect map keys, but the resulting syntax is misleading: `map.find(&outpoint)`. Implement an indirectmap that acts as a wrapper to a map that uses a DereferencingComparator, supporting a syntax that accurately reflect the container's semantics: inserts and iterators use pointers since they store pointers and need them to remain constant and dereferenceable, but lookup functions take const references. |
9 years ago |