Vixen
02b45cc4
csharp
public readonly record struct Declaration

One property: value, as the cascade sees it.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

The value is a string, and that is the design rather than a shortcut. The cascade's entire job is deciding which declaration wins; what 1.5rem or spring(1, 100, 10) then means is the property system's job, downstream and separate. Keeping them apart is what lets a stylesheet carry a property Vixen has never heard of — including the custom properties the whole var() mechanism is built on — without the cascade needing an opinion about it.

Interned, because a stylesheet says color: rgb(255, 0, 0) in forty places and the style-sharing cache compares whole declaration sets for equality. Integers make that a sequence compare instead of forty string compares.

Fields and properties (3)

  • public int Property

    The interned property name.

  • public int Value

    The interned value text.

  • public bool Important

    Whether it carried !important.

Methods (1)

  • public Declaration(int Property, int Value, bool Important)

    One property: value, as the cascade sees it.

Used by (10)

  • AnimatorVixen.Ui.Styling
  • BridgeFixtureVixen.Ui.Tests
  • CascadeFixtureVixen.Ui.Styling.Tests
  • InlineStyleStoreVixen.Ui.Styling
  • KeyframesTableVixen.Ui.Styling
  • StyleEngineVixen.Ui.Styling
  • StyleResolverVixen.Ui.Styling
  • StyleRuleSetVixen.Ui.Styling
  • StyleSheetLoaderVixen.Ui.Styling
  • UiElementVixen.Ui