Enum Class Provenance

java.lang.Object
java.lang.Enum<Provenance>
com.darkcollective.relix.symbol.Provenance
All Implemented Interfaces:
Serializable, Comparable<Provenance>, Constable

public enum Provenance extends Enum<Provenance>
Records whether a symbol was provided by the runtime or declared by a user.

Provenance affects display (error messages distinguish built-in vs user symbols), default shadow policy, and tooling (e.g. documentation generators may suppress built-in symbols from user-facing output).

  • Enum Constant Details

    • BUILTIN

      public static final Provenance BUILTIN
      The symbol is supplied by the relix runtime — a built-in function or a predefined relation. Built-in symbols default to ShadowPolicy.FORBIDDEN to prevent accidental redefinition.
    • USER

      public static final Provenance USER
      The symbol was declared by the user in a .relix source file. User symbols default to ShadowPolicy.PERMITTED.
  • Method Details

    • values

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

      public static Provenance valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (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 class has no constant with the specified name
      NullPointerException - if the argument is null