Skip to content

Latest commit

 

History

History
202 lines (161 loc) · 10.1 KB

metrics.md

File metadata and controls

202 lines (161 loc) · 10.1 KB

NB: This report has been created using Solidity-Metrics

Solidity Metrics for Scoping for panoptic-labs - panoptic-v1-core-private

Table of contents

Scope

This section lists files that are in scope for the metrics report.

  • Project: Scoping for panoptic-labs - panoptic-v1-core-private
  • Included Files: 20
  • Excluded Files: 30
  • Project analysed: https://github.com/panoptic-labs/panoptic-v1-core-private (@dcb619e9a18465ff17422a7f0a8db2a619e6c5fe)

Source Units in Scope

Source Units Analyzed: 20
Source Units in Scope: 20 (100%)

Type File Logic Contracts Interfaces Lines nLines nSLOC Comment Lines Complex. Score Capabilities
📝 contracts/CollateralTracker.sol 1 **** 1650 1540 682 669 415 📤Σ
📝 contracts/PanopticFactory.sol 1 **** 423 405 198 143 103 Σ
📝 contracts/PanopticPool.sol 1 **** 1981 1819 992 597 597 🧮Σ
📝 contracts/SemiFungiblePositionManager.sol 1 **** 1569 1446 601 697 352 🧮Σ
📚 contracts/libraries/CallbackLib.sol 1 **** 39 35 18 13 4 ****
📚 contracts/libraries/Constants.sol 1 **** 23 23 9 9 6 ****
📚 contracts/libraries/Errors.sol 1 **** 112 112 36 43 1 ****
📚 contracts/libraries/FeesCalc.sol 1 **** 209 194 71 115 41 Σ
📚 contracts/libraries/InteractionHelper.sol 1 **** 116 101 57 38 38 ♻️Σ
📚 contracts/libraries/Math.sol 1 **** 782 763 398 304 531 🖥Σ
📚 contracts/libraries/PanopticMath.sol 1 **** 967 892 498 308 445 🧮Σ
📚 contracts/libraries/SafeTransferLib.sol 1 **** 77 77 33 37 113 🖥
🎨 contracts/multicall/Multicall.sol 1 **** 37 37 18 15 37 🖥💰👥Σ
🎨 contracts/tokens/ERC1155Minimal.sol 1 **** 241 226 100 91 61 Σ
🎨 contracts/tokens/ERC20Minimal.sol 1 **** 147 147 52 66 20 Σ
🔍 contracts/tokens/interfaces/IDonorNFT.sol **** 1 20 13 4 7 3 ****
🔍 contracts/tokens/interfaces/IERC20Partial.sol **** 1 28 16 3 19 7 ****
📚 contracts/types/LeftRight.sol 1 **** 302 279 133 102 144 Σ
📚 contracts/types/LiquidityChunk.sol 1 **** 194 175 72 88 33 Σ
📚 contracts/types/TokenId.sol 1 **** 600 559 264 246 158 Σ
📝📚🔍🎨 Totals 18 2 9517 8859 4239 3607 3109 🖥💰📤👥🧮♻️Σ
Legend
  • Lines: total lines of the source unit
  • nLines: normalized lines of the source unit (e.g. normalizes functions spanning multiple lines)
  • SLOC: source lines of code
  • Comment Lines: lines containing single or block comments
  • Complexity Score: a custom complexity score derived from code statements that are known to introduce code complexity (branches, loops, calls, external interfaces, ...)

Out of Scope

Excluded Source Units

Source Units Excluded: 28

File
/test/foundry/types/harnesses/TokenIdHarness.sol
/test/foundry/types/harnesses/LiquidityChunkHarness.sol
/test/foundry/types/harnesses/LeftRightHarness.sol
/test/foundry/types/TokenId.t.sol
/test/foundry/types/LiquidityChunk.t.sol
/test/foundry/types/LeftRight.t.sol
/test/foundry/tokens/ERC1155Minimal.t.sol
/test/foundry/testUtils/ReentrancyMocks.sol
/test/foundry/testUtils/PriceMocks.sol
/test/foundry/testUtils/PositionUtils.sol
/test/foundry/periphery/PanopticHelper.t.sol
/test/foundry/libraries/harnesses/PanopticMathHarness.sol
/test/foundry/libraries/harnesses/MathHarness.sol
/test/foundry/libraries/harnesses/FeesCalcHarness.sol
/test/foundry/libraries/harnesses/CallbackLibHarness.sol
/test/foundry/libraries/SafeTransferLib.t.sol
/test/foundry/libraries/PositionAmountsTest.sol
/test/foundry/libraries/PanopticMath.t.sol
/test/foundry/libraries/Math.t.sol
/test/foundry/libraries/FeesCalc.t.sol
/test/foundry/libraries/CallbackLib.t.sol
/test/foundry/core/SemiFungiblePositionManager.t.sol
/test/foundry/core/PanopticPool.t.sol
/test/foundry/core/PanopticFactory.t.sol
/test/foundry/core/Misc.t.sol
/test/foundry/core/CollateralTracker.t.sol
/scripts/tokens/ERC20S.sol
/periphery/PanopticHelper.sol

Report

Overview

The analysis finished with 0 errors and 0 duplicate files.

Inline Documentation

  • Comment-to-Source Ratio: On average there are1.33 code lines per comment (lower=better).
  • ToDo's: 0

Components

📝Contracts 📚Libraries 🔍Interfaces 🎨Abstract
4 11 1 3

Exposed Functions

This section lists functions that are explicitly declared public or payable. Please note that getter methods for public stateVars are not included.

🌐Public 💰Payable
91 1
External Internal Private Pure View
66 232 3 105 70

StateVariables

Total 🌐Public
97 5

Capabilities

Solidity Versions observed 🧪 Experimental Features 💰 Can Receive Funds 🖥 Uses Assembly 💣 Has Destroyable Contracts
^0.8.18
^0.8.0
yes yes
(31 asm blocks)
****
📤 Transfers ETH ⚡ Low-Level Calls 👥 DelegateCall 🧮 Uses Hash Functions 🔖 ECRecover 🌀 New/Create/Create2
yes **** yes yes **** ****
♻️ TryCatch Σ Unchecked
yes yes

Dependencies / External Imports

Dependency / Import Path Count
@contracts/CollateralTracker.sol 4
@contracts/PanopticPool.sol 1
@contracts/SemiFungiblePositionManager.sol 3
@libraries/CallbackLib.sol 2
@libraries/Constants.sol 7
@libraries/Errors.sol 10
@libraries/FeesCalc.sol 2
@libraries/InteractionHelper.sol 2
@libraries/Math.sol 7
@libraries/PanopticMath.sol 6
@libraries/SafeTransferLib.sol 3
@multicall/Multicall.sol 4
@openzeppelin/contracts/proxy/Clones.sol 1
@openzeppelin/contracts/security/ReentrancyGuard.sol 1
@openzeppelin/contracts/token/ERC1155/ERC1155.sol 1
@openzeppelin/contracts/token/ERC1155/utils/ERC1155Holder.sol 2
@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol 1
@openzeppelin/contracts/utils/Strings.sol 1
@tokens/ERC1155Minimal.sol 1
@tokens/ERC20Minimal.sol 1
@tokens/interfaces/IERC20Partial.sol 1
@types/LeftRight.sol 5
@types/LiquidityChunk.sol 6
@types/TokenId.sol 6
univ3-core/interfaces/IUniswapV3Factory.sol 3
univ3-core/interfaces/IUniswapV3Pool.sol 5
Contract Summary
Error: extraneous input 'univ3pool' expecting '=>' (103:27)