Package icyllis.arc3d.compiler

# Enum Class ShaderKind

java.lang.Object
java.lang.Enum<ShaderKind>
icyllis.arc3d.compiler.ShaderKind

All Implemented Interfaces:
  `Serializable`, `Comparable<ShaderKind>`, `Constable`

public enum ShaderKind extends Enum<ShaderKind>
We support several shader kinds.

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class java.lang.Enum

  `Enum.EnumDesc<E extends Enum<E>>`

- ## Enum Constant Summary

  Enum Constants
  Enum Constant
  Description
  `BASE`
  For base modules.
  `COMPUTE`
  For compute shaders.
  `FRAGMENT`
  For fragment shaders.
  `PRIVATE_SUBROUTINE_BLENDER`
  `PRIVATE_SUBROUTINE_COLOR_FILTER`
  `PRIVATE_SUBROUTINE_SHADER`
  `SUBROUTINE`
  A substage of shader code, working as a function.
  `SUBROUTINE_BLENDER`
  `SUBROUTINE_COLOR_FILTER`
  `SUBROUTINE_SHADER`
  `VERTEX`
  For vertex shaders.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `isAnySubroutine()`
  `boolean`
  `isCompute()`
  `boolean`
  `isFragment()`
  `boolean`
  `isVertex()`
  `static ShaderKind`
  `valueOf(String name)`
  Returns the enum constant of this class with the specified name.
  `static ShaderKind[]`
  `values()`
  Returns an array containing the constants of this enum class, in the order they are declared.

  ### Methods inherited from class java.lang.Enum

  `clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

  ### Methods inherited from class java.lang.Object

  `getClass, notify, notifyAll, wait, wait, wait`

- ## Enum Constant Details

  - ### BASE

    public static final ShaderKind BASE
    For base modules.

  - ### VERTEX

    public static final ShaderKind VERTEX
    For vertex shaders.

  - ### FRAGMENT

    public static final ShaderKind FRAGMENT
    For fragment shaders.

  - ### COMPUTE

    public static final ShaderKind COMPUTE
    For compute shaders.

  - ### SUBROUTINE

    public static final ShaderKind SUBROUTINE
    A substage of shader code, working as a function.

  - ### SUBROUTINE_SHADER

    public static final ShaderKind SUBROUTINE_SHADER

  - ### SUBROUTINE_COLOR_FILTER

    public static final ShaderKind SUBROUTINE_COLOR_FILTER

  - ### SUBROUTINE_BLENDER

    public static final ShaderKind SUBROUTINE_BLENDER

  - ### PRIVATE_SUBROUTINE_SHADER

    public static final ShaderKind PRIVATE_SUBROUTINE_SHADER

  - ### PRIVATE_SUBROUTINE_COLOR_FILTER

    public static final ShaderKind PRIVATE_SUBROUTINE_COLOR_FILTER

  - ### PRIVATE_SUBROUTINE_BLENDER

    public static final ShaderKind PRIVATE_SUBROUTINE_BLENDER

- ## Method Details

  - ### values

    public static ShaderKind[] 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 ShaderKind 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

  - ### isVertex

    public boolean isVertex()

  - ### isFragment

    public boolean isFragment()

  - ### isCompute

    public boolean isCompute()

  - ### isAnySubroutine

    public boolean isAnySubroutine()