1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# Pool.sol — medium library (~613 lines, no viaIR)
# lsp-bench -c benchmarks/pool.yaml
project: v4-core
file: src/libraries/Pool.sol
line: 102
col: 15
output: benchmarks/pool
report: README.md
exclude:
- textDocument/typeDefinition
- textDocument/implementation
- textDocument/codeLens
- textDocument/documentColor
servers:
- mmsaki@latest
# - mmsaki@v0.1.25
# - solc
# - qiuxiang
# - juanfranblanco
# - nomicfoundation
methods:
textDocument/definition:
line: 102
col: 15
# TickMath — imported from ./TickMath.sol, cross-file jump
textDocument/references:
line: 8
col: 8
# TickMath — ~18 references throughout the file
textDocument/completion:
line: 110
col: 13
trigger: "."
# self. — completion on State storage struct members (slot0, liquidity, tickBitmap, etc.)
textDocument/hover:
line: 145
col: 13
# modifyLiquidity — fully documented function with NatSpec
textDocument/rename:
line: 149
col: 15
# liquidityDelta — ~13 usages within modifyLiquidity
textDocument/semanticTokens/range:
startLine: 0
startCol: 0
line: 200
col: 0
# First 200 lines — imports through modifyLiquidity
textDocument/formatting:
didChange:
- file: ../example/Pool.unformatted.snapshot
line: 0
col: 0
# 10 extra blank lines at end — formatter should strip them
textDocument/signatureHelp:
line: 102
col: 43
# Inside TickMath.getTickAtSqrtPrice(sqrtPriceX96)
workspace/willRenameFiles:
renameFiles:
- file: src/libraries/Pool.sol
newName: Pools.sol
- file: src/libraries/Pools.sol
newName: Pool.sol
# Rename Pool.sol -> Pools.sol, then rename back to original path.
workspace/willCreateFiles:
createFiles:
- file: src/libraries/PoolBenchCreate.s.sol
# Create lifecycle benchmark in v4-core/src/libraries (script template scaffold).
workspace/willDeleteFiles:
deleteFiles:
- file: src/libraries/Pool.sol
# Delete lifecycle benchmark for Pool.sol (restored after run).