public readonly record struct SelectorOne selector, compiled into something the matcher can run.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
⚠ There is no pseudo-element here, and there used to be. A fourth field held the interned name of a ::before or ::after, and nothing in the matcher, the rule set or the resolver ever read it — so the rule matched the originating element and coloured it. A field written and never read is not a partial feature; it is a rule that means something else. SelectorCompiler now refuses the selector with a diagnostic, and the field is gone so that nothing can be built on top of a value that is always absent. Doc 43's A12 is where generated boxes are planned. ⚠ It is not blocked on the one-node-one-box invariant, which is what this used to say: that invariant has moved twice since — inline fragmentation, then anonymous block boxes — and neither move reached this. What A12 needs is a second style slot, not a second rectangle.
Fields and properties (3)
public int StartWhere its compounds begin.
public int CountHow many compounds it has.
public Specificity SpecificityHow specific it is.
Methods (1)
public Selector(int Start, int Count, Specificity Specificity)One selector, compiled into something the matcher can run.
Used by (16)
- CombinatorPairTestsVixen.Ui.Styling.Tests
- RepositoryScanVixen.Ui.Styling.Tests
- RuleIndexVixen.Ui.Styling
- SelectorCompilerVixen.Ui.Styling
- SelectorMatcherVixen.Ui.Styling
- SelectorMatchingTestsVixen.Ui.Styling.Tests
- SelectorQueryVixen.Ui.Testing
- SelectorSurfaceSweepTestsVixen.Ui.Styling.Tests
- SelectorTableVixen.Ui.Styling
- StyleFixtureVixen.Ui.Styling.Tests
- StyleInvalidatorVixen.Ui.Styling
- StyleResolverVixen.Ui.Styling
- StyleRuleVixen.Ui.Styling
- StyleRuleSetVixen.Ui.Styling
- StyleSheetLoaderVixen.Ui.Styling
- WhereSelectorTestsVixen.Ui.Styling.Tests