Vixen
02b45cc4

DirectiveSyntax

class
csharp
public abstract class DirectiveSyntax

A file-level header: @component, @namespace, @tag or @using.

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

Remarks

⚠ They share a base so that they can share a list, and they share a list so that the tree holds them in the order the file wrote them. Held as one field each — which is what this was — a node's children come out in *field* order, so a file that put its @using above its @namespace did not reproduce itself. That is the one property everything else here rests on: an incremental reparse, a formatter and every span-to-source mapping all assume a tree can be printed back into the file it came from.

Used by (6)

  • ComponentDirectiveSyntaxVixen.Ui.Markup
  • DocumentSyntaxVixen.Ui.Markup
  • NamespaceDirectiveSyntaxVixen.Ui.Markup
  • SyntaxFactoryVixen.Ui.Markup
  • TagDirectiveSyntaxVixen.Ui.Markup
  • UsingDirectiveSyntaxVixen.Ui.Markup