Interface SyntaxTag

All Known Implementing Classes:
StandardSyntaxTag

public interface SyntaxTag
Program element "tags", presumed to be singletons (best implemented as enums) that define user-visible behavior for debugging and other simple tools. These categories should correspond to program structures, for example "statement" and "assignment", that are meaningful ("human-sensible") to guest language programmers.

An untagged Truffle node should be understood as an artifact of the guest language implementation and should not be visible to guest language programmers. Nodes may also have more than one tag, for example a variable assignment that is also a statement. Finally, the assignment of tags to nodes could depending on the use-case of whatever tool is using them.

Disclaimer: experimental interface under development.

See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    Criteria and example uses for the tag.
    Human-friendly name of guest language program elements belonging to the category, e.g.
  • Method Details

    • name

      String name()
      Human-friendly name of guest language program elements belonging to the category, e.g. "statement".
    • getDescription

      String getDescription()
      Criteria and example uses for the tag.