perf(semantic)!: remove SymbolTable::spans field#4473
perf(semantic)!: remove SymbolTable::spans field#4473overlookmotel wants to merge 1 commit intomainfrom
SymbolTable::spans field#4473Conversation
|
I need this API for no |
CodSpeed Performance ReportMerging #4473 will not alter performanceComparing Summary
|
|
@DonIsaac Shouldn't the AST node that a symbol's You can still get the I had assumed the problem here causing the test failures was that the |
f08b812 to
f6ea0b1
Compare
f6ea0b1 to
b60bdf1
Compare
ad13d44 to
16c2ec4
Compare
|
@overlookmotel I'm not sure, I just trust getting spans from AST node declarations less than symbol spans. There's some funkiness going on with getting declaration nodes for function expressions. Mind if we wait until #4445 is merged first, then see how this PR affects spans it reports? |
|
Same as #4464 (comment) |
|
Closing due to unsure if this is going to complicate other features. And the benchmark shows no performance improvement. |
|
Well 1-2% improvement on semantic benchmarks isn't nothing. But, yes, I agree we should close for now. @Boshen can you answer one question though? What AST nodes are |
|
Ignore that question. #4739 explains the problem. |

Remove
spansfield fromSymbolTable. It's unnecessary because you can get theSpanfrom theAstNodeId, and these lookups only happen in the linter when generating diagnostics (i.e. cold path).Lots of tests failing. I believe this isn't due to this PR being incorrect, but that it's surfacing existing bugs where
AstNodeIdfor a lot of symbols is set incorrectly.@DonIsaac Are these the same bugs you've found already? Or new ones?