Parser class
#include <derCompiler/GlslTypedAst.h>
Grows the shared typed AST (declarations + per-function statement trees) from an already-lowered modern-GLSL stage token stream.
Handles the translated subset the AST-based emitters share: global-scope struct/block/uniform/sampler/ interface declarations, layout(location) qualifiers, gl_VertexID, and function bodies as Stmt trees. Constructs outside the subset make Ok() return false with a Reason(); the emitter then declines.
Public types
- struct FragOutputDecl
Constructors, destructors, conversion operators
-
Parser(const std::
vector<GlslToken>& tokens, bool vertexStage)
Public functions
Public variables
-
std::
vector<StructDecl> Structs -
std::
vector<BlockDecl> Blocks -
std::
vector<UniformDecl> Uniforms -
std::
vector<SamplerDecl> Samplers -
std::
vector<VaryingDecl> Varyings -
std::
vector<AttributeDecl> Attributes -
std::
vector<GlobalVarDecl> GlobalVars -
std::
vector<Function> Functions -
std::
vector<FragOutputDecl> FragOutputs