Package icyllis.arc3d.compiler
package icyllis.arc3d.compiler
Arc3D Shading Language, based on GLSL 450, inspired by SkSL 300.
-
ClassDescriptionContains the built-in, core SL types.Abstract superclass of all code generators, which take a
TranslationUnit
as input and produce code as output.Holds the options for compiling a shader executable.Performs constant folding on AST expressions.Contains objects and state associated withShaderCompiler
(i.e.Class which is notified in the event of an error.Causes the compiler to terminate immediately.See GLSL.std.450Limited set of GLSL versions we generate shaders for.A list of every supported intrinsic.Standard layout for interface blocks, according to OpenGL and Vulkan specification.Thread-safe class that loads shader modules.Represents a precompiled module that can be used to compile other files.Operators.Consumes Arc3D shading language source text and invokes DSL functions to instantiate the AST (parsed IR).Represents a position that encapsulates the offset and length.Shader capabilities for our DSL compiler.Main compiler entry point.We support several shader kinds.Maps identifiers to symbols, each instance represents a scope level or a module boundary.Specify a backend API for validation.A fully-resolved AST of a single shader executable, ready for code generation.