Shader: Fill SourceLocation info to AST when parsing

This commit is contained in:
SirLynix
2022-03-28 18:24:51 +02:00
committed by Jérôme Leclercq
parent 8429411755
commit 78f4751967
10 changed files with 339 additions and 173 deletions

View File

@@ -34,7 +34,7 @@ namespace Nz::ShaderLang
public:
inline Error(SourceLocation sourceLocation, ErrorCategory errorCategory, unsigned int errorType) noexcept;
Error(const Error&) = delete;
Error(Error&&) = delete;
Error(Error&&) noexcept = default;
~Error() = default;
inline ErrorCategory GetErrorCategory() const;
@@ -45,7 +45,7 @@ namespace Nz::ShaderLang
const char* what() const noexcept override;
Error& operator=(const Error&) = delete;
Error& operator=(Error&&) = delete;
Error& operator=(Error&&) noexcept = default;
protected:
virtual std::string BuildErrorMessage() const = 0;
@@ -82,7 +82,7 @@ namespace Nz::ShaderLang
};
#define NAZARA_SHADERLANG_NEWERRORTYPE(Prefix, BaseClass, ErrorType, ErrorName, ErrorString, ...) \
class Prefix ## ErrorName ## Error : public BaseClass \
class Prefix ## ErrorName ## Error final : public BaseClass \
{ \
public: \
template<typename... Args> Prefix ## ErrorName ## Error(SourceLocation sourceLocation, Args&&... args) : \