Lluvia
error.h File Reference

error related classes and methods. More...

#include "lluvia/core/enums/enums.h"
#include <array>
#include <string>
#include <system_error>
#include <tuple>
Include dependency graph for error.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ll::ErrorCategory
 Class for error code category. More...
 

Namespaces

 ll
 
 ll::impl
 

Enumerations

enum class  ll::ErrorCode : ll::enum_t {
  ll::EnumConversionFailed , ll::MemoryMapFailed , ll::ObjectAllocationError , ll::PortBindingError ,
  ll::InvalidShaderFunctionName , ll::InvalidShaderProgram , ll::BufferCopyError , ll::ProgramCompilationError ,
  ll::InvalidLocalShape , ll::InvalidGridShape , ll::BadEnumCasting , ll::PhysicalDevicesNotFound ,
  ll::KeyNotFound , ll::MemoryCreationError , ll::InvalidNodeState , ll::InterpreterError ,
  ll::PushConstantError , ll::IOError , ll::InvalidArgument , ll::InstanceCreationError ,
  ll::SessionLost , ll::LayerNotFound , ll::ExtensionNotFound , ll::PipelineCreationError ,
  ll::VulkanError , ll::InvalidParameterType
}
 Error codes. More...
 

Functions

template<typename T = std::string>
ll::errorCodeToString (ll::ErrorCode &&value) noexcept
 Converts from ll::ErrorCode enum value to std::string. More...
 
std::error_code ll::createErrorCode (ll::ErrorCode errorCode)
 Creates an error code. More...
 
template<typename T >
void ll::throwSystemErrorIf (bool condition, ll::ErrorCode errorCode, T &&msg)
 Throws a std::system_error exception if the condition passed is true. More...
 
template<typename T >
void ll::throwSystemError (ll::ErrorCode errorCode, T &&msg)
 Throws a std::system_error exception with error code and message. More...
 

Variables

constexpr const std::array< std::tuple< const char *, ll::ErrorCode >, 26 > ll::impl::ErrorCodeStrings
 

Detailed Description

error related classes and methods.