pub fn parsed_doc<'db>(db: &'db dyn Database, file: SourceFile) -> ParsedArcExpand description
Parse the file’s source text. no_eq because ParsedArc has no
structural equality — invalidation is driven entirely by input changes,
not by comparing the new value against the old one.
Phase F: lru = 2048 bounds the number of cached ASTs. Parsed docs own
bumpalo arenas and are the largest memoized values in the db; dropping
older entries caps resident memory at roughly 2048 × avg_ast_size.
Re-reads after eviction reparse from the live SourceFile::text input
(cheap Arc<str> clone). This replaces the hand-written
DocumentStore::indexed_order LRU that used to bound Document entries.