Interesting choice to reply to matklad, one of rust-analyzer's primary authors, to explain how it works.
Nah, it’s a totally valid question: I indeed didn’t clarify where incrementality starts to happen.
I slapped myself in the face.
Yeah, to clarify, memoization happens after parsing. So for syntax highlighting we have a situation where from-scratch parsing is faster than incremental typechecking.