pub type ApplicableDeclarationList = SmallVec<[ApplicableDeclarationBlock; 16]>;
Expand description

List of applicable declarations. This is a transient structure that shuttles declarations between selector matching and inserting into the rule tree, and therefore we want to avoid heap-allocation where possible.

In measurements on wikipedia, we pretty much never have more than 8 applicable declarations, so we could consider making this 8 entries instead of 16. However, it may depend a lot on workload, and stack space is cheap.

Aliased Type§

struct ApplicableDeclarationList { /* private fields */ }