|
GLSL Struct 1.4.0
glslstruct
|
base class for all glsl type containers More...
#include <base_type.hpp>
Public Member Functions | |
| base_type (size_t size) noexcept | |
| constructor with type size | |
| base_type (const base_type &other) noexcept | |
| default copy constructor | |
| base_type (base_type &&other) noexcept | |
| default move constructor | |
| virtual | ~base_type () noexcept |
| default virtual destructor | |
| base_type & | operator= (const base_type &other) noexcept |
| default copy assignment operator | |
| base_type & | operator= (base_type &&other) noexcept |
| default move assignment operator | |
| template<type_visitor T> | |
| void | accept (T &visitor) const |
| accept function for type_visitors | |
| virtual bool | operator== (const base_type &other) const noexcept |
| virtual equality operator | |
| bool | operator!= (const base_type &other) const noexcept |
| default not equal operator | |
| size_t | get_size () const noexcept |
| returns size of type | |
| virtual std::string | to_string () const noexcept=0 |
| converts type to string | |
Protected Member Functions | |
| virtual void | _accept (mstd::function_view< void(const scalar_type &)> scalarVisit, mstd::function_view< void(const vec_type &)> vecVisit, mstd::function_view< void(const mat_type &)> matVisit, mstd::function_view< void(const struct_type &)> structVisit, mstd::function_view< void(const array_type &)> arrayVisit) const =0 |
| accept function for type visitors | |
Private Attributes | |
| size_t | _size |
| size value of type | |
Friends | |
| struct | std::hash< base_type > |
| template<utils::glsl_type T> | |
| _GLSL_STRUCT_CONSTEXPR20 bool | operator== (const base_type &lhs, const T &rhs) |
| checks if types are equal | |
| template<utils::glsl_type T> | |
| _GLSL_STRUCT_CONSTEXPR20 bool | operator!= (const base_type &lhs, const T &rhs) |
| checks if types are not equal | |
base class for all glsl type containers
|
explicitnoexcept |
constructor with type size
|
defaultnoexcept |
default copy constructor
|
defaultnoexcept |
default move constructor
|
virtualdefaultnoexcept |
default virtual destructor
|
protectedpure virtual |
accept function for type visitors
|
inline |
accept function for type_visitors
|
nodiscardnoexcept |
returns size of type
|
nodiscarddefaultnoexcept |
default not equal operator
default move assignment operator
default copy assignment operator
|
nodiscardvirtualnoexcept |
virtual equality operator
Reimplemented in glslstruct::type< Derived >, glslstruct::type< array_type >, glslstruct::type< mat_type >, glslstruct::type< scalar_type >, glslstruct::type< struct_type >, and glslstruct::type< vec_type >.
|
nodiscardpure virtualnoexcept |
converts type to string
Implemented in glslstruct::array_type, glslstruct::mat_type, glslstruct::scalar_type, glslstruct::struct_type, and glslstruct::vec_type.
|
friend |
checks if types are not equal
|
friend |
checks if types are equal
|
friend |
|
private |
size value of type