libER 0.1.4.2
ELDEN RING API library
|
Type reflection object for an implementing class. More...
#include <reflection.hpp>
Public Member Functions | |
virtual const char * | class_name () const noexcept=0 |
Get the name of the type. | |
virtual const wchar_t * | class_name_w () const noexcept=0 |
Get the name of the type (wide). | |
virtual size_t | class_size () const noexcept=0 |
Size of the type. | |
virtual LIBERAPI void | add_constructor_invoker (DLMethodInvoker *invoker, const char *method_name, const wchar_t *method_name_w) |
Add an invoker to a vector of invokers for the class's constructor. | |
virtual LIBERAPI void | add_method_invoker (DLMethodInvoker *invoker, const char *method_name, const wchar_t *method_name_w) |
Add an invoker to a vector of invokers for a given method. | |
const DLRuntimeClass * | get_base () const noexcept |
Get a derived class's base class. | |
liber::optref< const DLRuntimeMethod > | get_constructor () const noexcept |
Get the constructor method (if bound) | |
const from::vector< DLRuntimeMethodHolder > & | get_methods () const noexcept |
Get every bound method. | |
LIBERAPI liber::optref< DLRuntimeMethod > | find_method (const std::string_view &method_name) noexcept |
Find a bound method by name (if it exists). | |
Static Public Member Functions | |
static LIBERAPI const from::vector< DLRuntimeClassHolder > & | get_registered_classes () noexcept |
Get a vector of all globally registered DLRuntimeClasses. | |
static LIBERAPI const from::vector< DLRuntimeClassPair > & | get_runtime_pairs () noexcept |
Get a vector of all globally registered DLRuntimeClass pairs. | |
Type reflection object for an implementing class.
Allows for runtime type introspection and for binding method invokers.
Typically statically allocated, widely used in ELDEN RING.
|
virtual |
Add an invoker to a vector of invokers for the class's constructor.
invoker | the invoker for the method |
method_name | the name of the method |
method_name_w | the name of the method (wide) |
|
virtual |
Add an invoker to a vector of invokers for a given method.
invoker | the invoker for the method |
method_name | the name of the method |
method_name_w | the name of the method (wide) |
Get the name of the type.
Implemented in from::DLRF::DLRuntimeClassImpl< Impl >.
Get the name of the type (wide).
Implemented in from::DLRF::DLRuntimeClassImpl< Impl >.
|
noexcept |
Find a bound method by name (if it exists).
method_name | the name of the method |
|
inlinenoexcept |
Get a derived class's base class.
|
inlinenoexcept |
Get the constructor method (if bound)
|
inlinenoexcept |
Get every bound method.
|
staticnoexcept |
Get a vector of all globally registered DLRuntimeClasses.
The returned vector contains every DLRuntimeClass that has been registered so far by ELDEN RING. Be aware that classes are registered during the static initialization phase, so this vector will not be initialized before that point.
|
staticnoexcept |
Get a vector of all globally registered DLRuntimeClass pairs.
The returned vector contains every DLRuntimeClass pair that has been registered so far by ELDEN RING. Be aware that classes are registered during the static initialization phase, so this vector will not be initialized before that point.