CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::StructEnum< T, Underlying > Class Template Reference

#include <CeresEngine/Foundation/StructEnum.hpp>

Public Types

using UnderlyingType = Underlying
 
using Self = T
 

Public Member Functions

 operator UnderlyingType () const noexcept
 Converts the enum into it's underlying type.
 
void toString (std::ostream &stream) const noexcept
 Writes a string representation of the ShaderType to the given stream.
 

Static Public Member Functions

static Self fromRawUnderlying (UnderlyingType underlying) noexcept
 Creates a new Self from it's underlying numeric representation.
 

Friends

std::ostream & operator<< (std::ostream &stream, const T &object)
 
bool operator== (const T &lhs, const T &rhs) noexcept
 Checks if the two values are equal.
 
bool operator!= (const T &lhs, const T &rhs) noexcept
 Checks if the two values are not equal.
 

Member Typedef Documentation

◆ Self

◆ UnderlyingType

template<typename T , typename Underlying = UInt32>
using CeresEngine::StructEnum< T, Underlying >::UnderlyingType = Underlying

Member Function Documentation

◆ fromRawUnderlying()

template<typename T , typename Underlying = UInt32>
static Self CeresEngine::StructEnum< T, Underlying >::fromRawUnderlying ( UnderlyingType  underlying)
inlinestaticnoexcept

Creates a new Self from it's underlying numeric representation.

◆ operator UnderlyingType()

template<typename T , typename Underlying = UInt32>
CeresEngine::StructEnum< T, Underlying >::operator UnderlyingType ( ) const
inlineexplicitnoexcept

Converts the enum into it's underlying type.

◆ toString()

template<typename T , typename Underlying = UInt32>
void CeresEngine::StructEnum< T, Underlying >::toString ( std::ostream &  stream) const
inlinenoexcept

Writes a string representation of the ShaderType to the given stream.

Friends And Related Symbol Documentation

◆ operator!=

template<typename T , typename Underlying = UInt32>
bool operator!= ( const T lhs,
const T rhs 
)
friend

Checks if the two values are not equal.

◆ operator<<

template<typename T , typename Underlying = UInt32>
std::ostream & operator<< ( std::ostream &  stream,
const T object 
)
friend

◆ operator==

template<typename T , typename Underlying = UInt32>
bool operator== ( const T lhs,
const T rhs 
)
friend

Checks if the two values are equal.


The documentation for this class was generated from the following file: