Enum StandardSyntaxTag

java.lang.Object
java.lang.Enum<StandardSyntaxTag>
com.oracle.truffle.api.instrument.StandardSyntaxTag
All Implemented Interfaces:
SyntaxTag, Serializable, Comparable<StandardSyntaxTag>, java.lang.constant.Constable

public enum StandardSyntaxTag extends Enum<StandardSyntaxTag> implements SyntaxTag
A somewhat language-agnostic set of user-sensible syntactic categories, suitable for conventional imperative languages, and is being developed incrementally.

The need for alternative sets of tags is likely to arise, perhaps for other families of languages (for example for mostly expression-oriented languages) or even for specific languages.

Disclaimer: experimental interface under development.

See Also:
  • Enum Constant Details

    • ASSIGNMENT

      public static final StandardSyntaxTag ASSIGNMENT
      Marker for a variable assignment.
    • CALL

      public static final StandardSyntaxTag CALL
      Marker for a call site.
    • THROW

      public static final StandardSyntaxTag THROW
      Marker for a location where a guest language exception is about to be thrown.
    • STATEMENT

      public static final StandardSyntaxTag STATEMENT
      Marker for a location where ordinary "stepping" should halt.
    • START_METHOD

      public static final StandardSyntaxTag START_METHOD
      Marker for the start of the body of a method.
    • START_LOOP

      public static final StandardSyntaxTag START_LOOP
      Marker for the start of the body of a loop.
    • PERIODIC

      public static final StandardSyntaxTag PERIODIC
      Marker that is attached to some arbitrary locations that appear often-enough in an AST so that a location with this tag is regularly executed. Could be the start of method and loop bodies. May be used to implement some kind of safepoint functionality.
  • Method Details

    • values

      public static StandardSyntaxTag[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static StandardSyntaxTag valueOf(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null
    • getName

      public String getName()
    • getDescription

      public String getDescription()
      Description copied from interface: SyntaxTag
      Criteria and example uses for the tag.
      Specified by:
      getDescription in interface SyntaxTag