CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::DynamicLibrary::Symbol< void > Struct Reference

A helper structure that provides an implicit conversion operator from a loaded void* function pointer into a T function pointer. More...

#include <CeresEngine/Foundation/DynamicLibrary.hpp>

Public Types

using Ptr = void *
 The void* pointer type.
 

Public Member Functions

 operator bool () const noexcept
 
template<typename T , typename = typename std::enable_if_t<std::is_pointer_v<T>>>
 operator T () const noexcept
 Converts the void* pointer into a T pointer type.
 
template<typename T >
 operator Symbol< T > () const noexcept
 Converts the void* pointer into a T pointer type.
 

Public Attributes

Ptr ptr
 The loaded function pointer.
 

Detailed Description

A helper structure that provides an implicit conversion operator from a loaded void* function pointer into a T function pointer.

Member Typedef Documentation

◆ Ptr

The void* pointer type.

Member Function Documentation

◆ operator bool()

CeresEngine::DynamicLibrary::Symbol< void >::operator bool ( ) const
inlineexplicitnoexcept
Returns
true if the symbol is available

◆ operator Symbol< T >()

template<typename T >
CeresEngine::DynamicLibrary::Symbol< void >::operator Symbol< T > ( ) const
inlinenoexcept

Converts the void* pointer into a T pointer type.

Template Parameters
Tthe pointer type to convert to
Returns
The converted pointer type.

◆ operator T()

template<typename T , typename = typename std::enable_if_t<std::is_pointer_v<T>>>
CeresEngine::DynamicLibrary::Symbol< void >::operator T ( ) const
inlinenoexcept

Converts the void* pointer into a T pointer type.

Template Parameters
Tthe pointer type to convert to
Returns
The converted pointer type.

Member Data Documentation

◆ ptr

The loaded function pointer.


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