Vixen
02b45cc4
csharp
public sealed class TransitionParser

Reads transition, animation and the timing-function grammar.

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

Remarks

⚠ Vixen has to parse the transition shorthand itself, and cannot rely on the longhands. ExCSS expands the shorthand only when it recognises every part — so transition: opacity 200ms ease-in arrives as four longhand declarations, and transition: opacity 200ms spring(1, 100, 10) arrives as one unknown property with its text intact. Whether the longhands exist therefore depends on whether the author used a Vixen extension, which is not a distinction anything downstream should have to know about. Both forms are read here and produce the same thing.

Exactly parallel to @layer: the front end handles the common case, Vixen owns the general one, and the seam stops here.

Fields and properties (1)

  • public int All

    The interned name meaning "every property".

Methods (5)

  • public TransitionParser(NameTable properties)

    Creates a parser.

  • public bool TryParseShorthand(string text, List<TransitionSpec> specs)

    Reads a transition shorthand.

  • public static List<Range> TopLevelSplit(ReadOnlySpan<char> text, char separator)

    Splits on a separator, keeping bracketed groups whole.

  • public static bool TryTimingFunction(ReadOnlySpan<char> text, out TimingFunction timing)

    Reads a timing function.

  • public static bool TryDuration(ReadOnlySpan<char> text, out float seconds)

    Reads a duration.

Used by (2)

  • AnimatorVixen.Ui.Styling
  • TransitionTestsVixen.Ui.Styling.Tests