Uniswap / v4-core

🦄 🦄 🦄 🦄 Core smart contracts of Uniswap v4
https://blog.uniswap.org/uniswap-v4
Other
1.97k stars 934 forks source link

fix: Don't overload `state` naming and only return necessary vars in swap #848

Closed snreynolds closed 1 month ago

snreynolds commented 1 month ago

Related Issue

Which issue does this pull request resolve?

Description of changes

snreynolds commented 1 month ago

would replace https://github.com/Uniswap/v4-core/pull/843

github-actions[bot] commented 1 month ago
Forge code coverage: File % Lines % Statements % Branches % Funcs
src/ERC6909.sol 82.61% (19/23) 78.57% (22/28) 100.00% (2/2) 85.71% (6/7)
src/ERC6909Claims.sol 100.00% (6/6) 100.00% (8/8) 100.00% (2/2) 100.00% (1/1)
src/Extsload.sol 0.00% (0/28) 0.00% (0/30) 0.00% (0/2) 100.00% (3/3)
src/Exttload.sol 0.00% (0/15) 0.00% (0/16) 0.00% (0/1) 50.00% (1/2)
src/NoDelegateCall.sol 66.67% (2/3) 75.00% (3/4) 100.00% (1/1) 100.00% (3/3)
src/PoolManager.sol 98.97% (96/97) 97.74% (130/133) 89.47% (17/19) 100.00% (20/20)
src/ProtocolFees.sol 83.33% (20/24) 83.87% (26/31) 80.00% (4/5) 100.00% (6/6)
src/libraries/BitMath.sol 18.18% (2/11) 18.18% (2/11) 0.00% (0/4) 100.00% (2/2)
src/libraries/CurrencyDelta.sol 33.33% (3/9) 45.45% (5/11) 100.00% (0/0) 100.00% (3/3)
src/libraries/CurrencyReserves.sol 14.29% (1/7) 14.29% (1/7) 0.00% (0/1) 100.00% (5/5)
src/libraries/CustomRevert.sol 0.00% (0/35) 0.00% (0/35) 100.00% (0/0) 100.00% (8/8)
src/libraries/FullMath.sol 68.97% (20/29) 72.73% (24/33) 33.33% (2/6) 100.00% (2/2)
src/libraries/Hooks.sol 94.12% (80/85) 95.00% (133/140) 92.00% (23/25) 100.00% (14/14)
src/libraries/LPFeeLibrary.sol 90.00% (9/10) 93.75% (15/16) 100.00% (1/1) 100.00% (7/7)
src/libraries/LiquidityMath.sol 0.00% (0/4) 0.00% (0/4) 0.00% (0/1) 100.00% (1/1)
src/libraries/Lock.sol 0.00% (0/3) 0.00% (0/3) 100.00% (0/0) 100.00% (3/3)
src/libraries/NonzeroDeltaCount.sol 0.00% (0/7) 0.00% (0/7) 100.00% (0/0) 100.00% (3/3)
src/libraries/ParseBytes.sol 0.00% (0/3) 0.00% (0/3) 100.00% (0/0) 100.00% (3/3)
src/libraries/Pool.sol 94.23% (147/156) 93.60% (161/172) 98.08% (51/52) 100.00% (13/13)
src/libraries/Position.sol 52.63% (10/19) 57.14% (12/21) 100.00% (3/3) 100.00% (3/3)
src/libraries/ProtocolFeeLibrary.sol 20.00% (2/10) 20.00% (2/10) 100.00% (0/0) 100.00% (4/4)
src/libraries/SafeCast.sol 100.00% (10/10) 100.00% (16/16) 100.00% (5/5) 100.00% (5/5)
src/libraries/SqrtPriceMath.sol 59.18% (29/49) 68.75% (44/64) 58.33% (7/12) 100.00% (9/9)
src/libraries/StateLibrary.sol 71.43% (45/63) 79.31% (69/87) 100.00% (4/4) 100.00% (14/14)
src/libraries/SwapMath.sol 80.77% (21/26) 81.48% (22/27) 100.00% (6/6) 100.00% (2/2)
src/libraries/TickBitmap.sol 40.00% (12/30) 50.00% (18/36) 66.67% (2/3) 100.00% (4/4)
src/libraries/TickMath.sol 30.00% (36/120) 48.80% (81/166) 95.83% (23/24) 100.00% (4/4)
src/libraries/TransientStateLibrary.sol 70.00% (7/10) 76.92% (10/13) 100.00% (0/0) 100.00% (5/5)
src/libraries/UnsafeMath.sol 0.00% (0/1) 0.00% (0/1) 100.00% (0/0) 100.00% (1/1)
src/types/BalanceDelta.sol 0.00% (0/2) 0.00% (0/2) 100.00% (0/0) 100.00% (2/2)
src/types/BeforeSwapDelta.sol 0.00% (0/2) 0.00% (0/2) 100.00% (0/0) 100.00% (2/2)
src/types/Currency.sol 59.09% (13/22) 70.00% (21/30) 75.00% (6/8) 100.00% (6/6)
src/types/PoolId.sol 0.00% (0/1) 0.00% (0/1) 100.00% (0/0) 100.00% (1/1)
src/types/Slot0.sol 0.00% (0/8) 0.00% (0/8) 100.00% (0/0) 100.00% (8/8)
Total 67.51% (1336/1979) 70.37% (1791/2545) 41.50% (266/641) 82.84% (391/472)