]> git.tdb.fi Git - libs/gl.git/blobdiff - source/programsyntax.h
Support precision qualifiers in shaders
[libs/gl.git] / source / programsyntax.h
index b72d401d1ffc1b81ccf2f70affc7e39250e8c147..9e64c4c7e86896192748cefb24e29b2333ca1787 100644 (file)
@@ -178,6 +178,15 @@ struct Import: Node
        virtual void visit(NodeVisitor &);
 };
 
+struct Precision: Node
+{
+       std::string precision;
+       std::string type;
+
+       virtual Precision *clone() const { return new Precision(*this); }
+       virtual void visit(NodeVisitor &);
+};
+
 struct Layout: Node
 {
        struct Qualifier
@@ -217,6 +226,7 @@ struct VariableDeclaration: Node
        bool constant;
        std::string sampling;
        std::string interface;
+       std::string precision;
        std::string type;
        StructDeclaration *type_declaration;
        std::string name;
@@ -321,6 +331,7 @@ struct NodeVisitor
        virtual void visit(FunctionCall &) { }
        virtual void visit(ExpressionStatement &) { }
        virtual void visit(Import &) { }
+       virtual void visit(Precision &) { }
        virtual void visit(Layout &) { }
        virtual void visit(InterfaceLayout &) { }
        virtual void visit(StructDeclaration &) { }