From 996b5ef85cf66ea649b7bd64a90eab4917c10694 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Leclercq?= Date: Thu, 8 Jul 2021 15:24:22 +0200 Subject: [PATCH] Shader: Rename ConstantIndexExpression to ConstantExpression --- include/Nazara/Shader/Ast/AstCloner.hpp | 2 +- include/Nazara/Shader/Ast/AstNodeList.hpp | 2 +- include/Nazara/Shader/Ast/AstOptimizer.hpp | 2 +- .../Nazara/Shader/Ast/AstRecursiveVisitor.hpp | 2 +- include/Nazara/Shader/Ast/AstSerializer.hpp | 2 +- include/Nazara/Shader/Ast/AstUtils.hpp | 2 +- include/Nazara/Shader/Ast/Nodes.hpp | 16 ++++++++-------- include/Nazara/Shader/Ast/SanitizeVisitor.hpp | 2 +- include/Nazara/Shader/LangWriter.hpp | 2 +- src/Nazara/Shader/Ast/AstCloner.cpp | 4 ++-- src/Nazara/Shader/Ast/AstOptimizer.cpp | 2 +- src/Nazara/Shader/Ast/AstRecursiveVisitor.cpp | 2 +- src/Nazara/Shader/Ast/AstSerializer.cpp | 2 +- src/Nazara/Shader/Ast/AstUtils.cpp | 2 +- src/Nazara/Shader/Ast/SanitizeVisitor.cpp | 6 +++--- src/Nazara/Shader/LangWriter.cpp | 2 +- 16 files changed, 26 insertions(+), 26 deletions(-) diff --git a/include/Nazara/Shader/Ast/AstCloner.hpp b/include/Nazara/Shader/Ast/AstCloner.hpp index f5b0d8f2b..da7bf2162 100644 --- a/include/Nazara/Shader/Ast/AstCloner.hpp +++ b/include/Nazara/Shader/Ast/AstCloner.hpp @@ -46,7 +46,7 @@ namespace Nz::ShaderAst virtual ExpressionPtr Clone(CallMethodExpression& node); virtual ExpressionPtr Clone(CastExpression& node); virtual ExpressionPtr Clone(ConditionalExpression& node); - virtual ExpressionPtr Clone(ConstantIndexExpression& node); + virtual ExpressionPtr Clone(ConstantExpression& node); virtual ExpressionPtr Clone(ConstantValueExpression& node); virtual ExpressionPtr Clone(IdentifierExpression& node); virtual ExpressionPtr Clone(IntrinsicExpression& node); diff --git a/include/Nazara/Shader/Ast/AstNodeList.hpp b/include/Nazara/Shader/Ast/AstNodeList.hpp index b9ea3f1f5..06ac44688 100644 --- a/include/Nazara/Shader/Ast/AstNodeList.hpp +++ b/include/Nazara/Shader/Ast/AstNodeList.hpp @@ -34,8 +34,8 @@ NAZARA_SHADERAST_EXPRESSION(CallFunctionExpression) NAZARA_SHADERAST_EXPRESSION(CallMethodExpression) NAZARA_SHADERAST_EXPRESSION(CastExpression) NAZARA_SHADERAST_EXPRESSION(ConditionalExpression) +NAZARA_SHADERAST_EXPRESSION(ConstantExpression) NAZARA_SHADERAST_EXPRESSION(ConstantValueExpression) -NAZARA_SHADERAST_EXPRESSION(ConstantIndexExpression) NAZARA_SHADERAST_EXPRESSION(IdentifierExpression) NAZARA_SHADERAST_EXPRESSION(IntrinsicExpression) NAZARA_SHADERAST_EXPRESSION(SwizzleExpression) diff --git a/include/Nazara/Shader/Ast/AstOptimizer.hpp b/include/Nazara/Shader/Ast/AstOptimizer.hpp index c2c363c62..070dbee48 100644 --- a/include/Nazara/Shader/Ast/AstOptimizer.hpp +++ b/include/Nazara/Shader/Ast/AstOptimizer.hpp @@ -43,7 +43,7 @@ namespace Nz::ShaderAst ExpressionPtr Clone(BinaryExpression& node) override; ExpressionPtr Clone(CastExpression& node) override; ExpressionPtr Clone(ConditionalExpression& node) override; - ExpressionPtr Clone(ConstantIndexExpression& node) override; + ExpressionPtr Clone(ConstantExpression& node) override; ExpressionPtr Clone(UnaryExpression& node) override; StatementPtr Clone(BranchStatement& node) override; StatementPtr Clone(ConditionalStatement& node) override; diff --git a/include/Nazara/Shader/Ast/AstRecursiveVisitor.hpp b/include/Nazara/Shader/Ast/AstRecursiveVisitor.hpp index 60196db9a..69143b52d 100644 --- a/include/Nazara/Shader/Ast/AstRecursiveVisitor.hpp +++ b/include/Nazara/Shader/Ast/AstRecursiveVisitor.hpp @@ -29,7 +29,7 @@ namespace Nz::ShaderAst void Visit(CastExpression& node) override; void Visit(ConditionalExpression& node) override; void Visit(ConstantValueExpression& node) override; - void Visit(ConstantIndexExpression& node) override; + void Visit(ConstantExpression& node) override; void Visit(IdentifierExpression& node) override; void Visit(IntrinsicExpression& node) override; void Visit(SwizzleExpression& node) override; diff --git a/include/Nazara/Shader/Ast/AstSerializer.hpp b/include/Nazara/Shader/Ast/AstSerializer.hpp index ec034eac8..2a4511044 100644 --- a/include/Nazara/Shader/Ast/AstSerializer.hpp +++ b/include/Nazara/Shader/Ast/AstSerializer.hpp @@ -30,7 +30,7 @@ namespace Nz::ShaderAst void Serialize(CallFunctionExpression& node); void Serialize(CallMethodExpression& node); void Serialize(CastExpression& node); - void Serialize(ConstantIndexExpression& node); + void Serialize(ConstantExpression& node); void Serialize(ConditionalExpression& node); void Serialize(ConstantValueExpression& node); void Serialize(IdentifierExpression& node); diff --git a/include/Nazara/Shader/Ast/AstUtils.hpp b/include/Nazara/Shader/Ast/AstUtils.hpp index 27cba6d66..0195e445f 100644 --- a/include/Nazara/Shader/Ast/AstUtils.hpp +++ b/include/Nazara/Shader/Ast/AstUtils.hpp @@ -40,7 +40,7 @@ namespace Nz::ShaderAst void Visit(CastExpression& node) override; void Visit(ConditionalExpression& node) override; void Visit(ConstantValueExpression& node) override; - void Visit(ConstantIndexExpression& node) override; + void Visit(ConstantExpression& node) override; void Visit(IdentifierExpression& node) override; void Visit(IntrinsicExpression& node) override; void Visit(SwizzleExpression& node) override; diff --git a/include/Nazara/Shader/Ast/Nodes.hpp b/include/Nazara/Shader/Ast/Nodes.hpp index 79fa65fdc..a7b658166 100644 --- a/include/Nazara/Shader/Ast/Nodes.hpp +++ b/include/Nazara/Shader/Ast/Nodes.hpp @@ -140,6 +140,14 @@ namespace Nz::ShaderAst ExpressionPtr truePath; }; + struct NAZARA_SHADER_API ConstantExpression : Expression + { + NodeType GetType() const override; + void Visit(AstExpressionVisitor& visitor) override; + + std::size_t constantId; + }; + struct NAZARA_SHADER_API ConstantValueExpression : Expression { NodeType GetType() const override; @@ -148,14 +156,6 @@ namespace Nz::ShaderAst ShaderAst::ConstantValue value; }; - struct NAZARA_SHADER_API ConstantIndexExpression : Expression - { - NodeType GetType() const override; - void Visit(AstExpressionVisitor& visitor) override; - - std::size_t constantId; - }; - struct NAZARA_SHADER_API IdentifierExpression : Expression { NodeType GetType() const override; diff --git a/include/Nazara/Shader/Ast/SanitizeVisitor.hpp b/include/Nazara/Shader/Ast/SanitizeVisitor.hpp index cf12359d6..f99c03aea 100644 --- a/include/Nazara/Shader/Ast/SanitizeVisitor.hpp +++ b/include/Nazara/Shader/Ast/SanitizeVisitor.hpp @@ -55,7 +55,7 @@ namespace Nz::ShaderAst ExpressionPtr Clone(CastExpression& node) override; ExpressionPtr Clone(ConditionalExpression& node) override; ExpressionPtr Clone(ConstantValueExpression& node) override; - ExpressionPtr Clone(ConstantIndexExpression& node) override; + ExpressionPtr Clone(ConstantExpression& node) override; ExpressionPtr Clone(IdentifierExpression& node) override; ExpressionPtr Clone(IntrinsicExpression& node) override; ExpressionPtr Clone(SwizzleExpression& node) override; diff --git a/include/Nazara/Shader/LangWriter.hpp b/include/Nazara/Shader/LangWriter.hpp index 96106810b..f68472ca8 100644 --- a/include/Nazara/Shader/LangWriter.hpp +++ b/include/Nazara/Shader/LangWriter.hpp @@ -90,7 +90,7 @@ namespace Nz void Visit(ShaderAst::CastExpression& node) override; void Visit(ShaderAst::ConditionalExpression& node) override; void Visit(ShaderAst::ConstantValueExpression& node) override; - void Visit(ShaderAst::ConstantIndexExpression& node) override; + void Visit(ShaderAst::ConstantExpression& node) override; void Visit(ShaderAst::IntrinsicExpression& node) override; void Visit(ShaderAst::SwizzleExpression& node) override; void Visit(ShaderAst::VariableExpression& node) override; diff --git a/src/Nazara/Shader/Ast/AstCloner.cpp b/src/Nazara/Shader/Ast/AstCloner.cpp index 9c1332f0f..cdc3e4eef 100644 --- a/src/Nazara/Shader/Ast/AstCloner.cpp +++ b/src/Nazara/Shader/Ast/AstCloner.cpp @@ -303,9 +303,9 @@ namespace Nz::ShaderAst return clone; } - ExpressionPtr AstCloner::Clone(ConstantIndexExpression& node) + ExpressionPtr AstCloner::Clone(ConstantExpression& node) { - auto clone = std::make_unique(); + auto clone = std::make_unique(); clone->constantId = node.constantId; clone->cachedExpressionType = node.cachedExpressionType; diff --git a/src/Nazara/Shader/Ast/AstOptimizer.cpp b/src/Nazara/Shader/Ast/AstOptimizer.cpp index dc04f5443..7c7bed29f 100644 --- a/src/Nazara/Shader/Ast/AstOptimizer.cpp +++ b/src/Nazara/Shader/Ast/AstOptimizer.cpp @@ -839,7 +839,7 @@ namespace Nz::ShaderAst return AstCloner::Clone(*node.falsePath); } - ExpressionPtr AstOptimizer::Clone(ConstantIndexExpression& node) + ExpressionPtr AstOptimizer::Clone(ConstantExpression& node) { if (!m_options.constantQueryCallback) return AstCloner::Clone(node); diff --git a/src/Nazara/Shader/Ast/AstRecursiveVisitor.cpp b/src/Nazara/Shader/Ast/AstRecursiveVisitor.cpp index ae65a181d..a067f19f8 100644 --- a/src/Nazara/Shader/Ast/AstRecursiveVisitor.cpp +++ b/src/Nazara/Shader/Ast/AstRecursiveVisitor.cpp @@ -67,7 +67,7 @@ namespace Nz::ShaderAst /* Nothing to do */ } - void AstRecursiveVisitor::Visit(ConstantIndexExpression& /*node*/) + void AstRecursiveVisitor::Visit(ConstantExpression& /*node*/) { /* Nothing to do */ } diff --git a/src/Nazara/Shader/Ast/AstSerializer.cpp b/src/Nazara/Shader/Ast/AstSerializer.cpp index fe1e6b857..ce822ff11 100644 --- a/src/Nazara/Shader/Ast/AstSerializer.cpp +++ b/src/Nazara/Shader/Ast/AstSerializer.cpp @@ -111,7 +111,7 @@ namespace Nz::ShaderAst Node(expr); } - void AstSerializerBase::Serialize(ConstantIndexExpression& node) + void AstSerializerBase::Serialize(ConstantExpression& node) { SizeT(node.constantId); } diff --git a/src/Nazara/Shader/Ast/AstUtils.cpp b/src/Nazara/Shader/Ast/AstUtils.cpp index 8505a8ce4..872536fd5 100644 --- a/src/Nazara/Shader/Ast/AstUtils.cpp +++ b/src/Nazara/Shader/Ast/AstUtils.cpp @@ -67,7 +67,7 @@ namespace Nz::ShaderAst m_expressionCategory = ExpressionCategory::RValue; } - void ShaderAstValueCategory::Visit(ConstantIndexExpression& /*node*/) + void ShaderAstValueCategory::Visit(ConstantExpression& /*node*/) { m_expressionCategory = ExpressionCategory::LValue; } diff --git a/src/Nazara/Shader/Ast/SanitizeVisitor.cpp b/src/Nazara/Shader/Ast/SanitizeVisitor.cpp index e9d823105..575e7a3f4 100644 --- a/src/Nazara/Shader/Ast/SanitizeVisitor.cpp +++ b/src/Nazara/Shader/Ast/SanitizeVisitor.cpp @@ -577,7 +577,7 @@ namespace Nz::ShaderAst return clone; } - ExpressionPtr SanitizeVisitor::Clone(ConstantIndexExpression& node) + ExpressionPtr SanitizeVisitor::Clone(ConstantExpression& node) { if (node.constantId >= m_context->constantValues.size()) throw AstError{ "invalid constant index " + std::to_string(node.constantId) }; @@ -601,8 +601,8 @@ namespace Nz::ShaderAst { case Identifier::Type::Constant: { - // Replace IdentifierExpression by ConstantIndexExpression - auto constantExpr = std::make_unique(); + // Replace IdentifierExpression by ConstantExpression + auto constantExpr = std::make_unique(); constantExpr->cachedExpressionType = GetExpressionType(m_context->constantValues[identifier->index]); constantExpr->constantId = identifier->index; diff --git a/src/Nazara/Shader/LangWriter.cpp b/src/Nazara/Shader/LangWriter.cpp index 6bc138237..6b0c01686 100644 --- a/src/Nazara/Shader/LangWriter.cpp +++ b/src/Nazara/Shader/LangWriter.cpp @@ -664,7 +664,7 @@ namespace Nz }, node.value); } - void LangWriter::Visit(ShaderAst::ConstantIndexExpression& node) + void LangWriter::Visit(ShaderAst::ConstantExpression& node) { Append(Retrieve(m_currentState->constantNames, node.constantId)); }