EnTT: entt::meta_func Class Reference

EnTT 3.16.0

Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
entt::meta_func Class Reference

Opaque wrapper for member functions. More...

`#include <meta.hpp>`

## Public Types
using | size_type = typename internal::meta_func_node::size_type
| Unsigned integer type.

## Public Member Functions
| meta_func () noexcept=default
| Default constructor.
| meta_func (const meta_ctx &area, const internal::meta_func_node &curr) noexcept
| Context aware constructor for meta objects.
const char * | name () const noexcept
| Returns the name assigned to a member function, if any.
size_type | arity () const noexcept
| Returns the number of arguments accepted by a member function.
bool | is_const () const noexcept
| Indicates whether a member function is constant or not.
bool | is_static () const noexcept
| Indicates whether a member function is static or not.
meta_type | ret () const noexcept
| Returns the return type of a member function.
meta_type | arg (size_type index) const noexcept
| Returns the type of the i-th argument of a member function.
template<typename Instance = meta_handle>
meta_any | invoke (Instance &&instance, meta_any *const args, const size_type sz) const
| Invokes the underlying function, if possible.
template<typename Instance = meta_handle, typename... Args>
meta_any | invoke (Instance &&instance, Args &&...args) const
| Invokes the underlying function, if possible.
template<typename Type>
Type | traits () const noexcept
| Returns all meta traits for a given meta object.
meta_custom | custom () const noexcept
| Returns user defined data for a given meta object.
meta_func | next () const
| Returns the next overload of a given function, if any.
| operator bool () const noexcept
| Returns true if an object is valid, false otherwise.
bool | operator== (const meta_func &other) const noexcept
| Checks if two objects refer to the same type.

## Detailed Description

Opaque wrapper for member functions.

Definition at line 925 of file meta.hpp.

## Member Typedef Documentation

## ◆ size_type

using entt::meta_func::size_type = typename internal::meta_func_node::size_type

Unsigned integer type.

Definition at line 933 of file meta.hpp.

## Constructor & Destructor Documentation

## ◆ meta_func()

entt::meta_func::meta_func | ( | const meta_ctx & | area,
|  | const internal::meta_func_node & | curr )
| inlinenoexcept

Context aware constructor for meta objects.

Parameters

  area | The context from which to search for meta types.
  curr | The underlying node with which to construct the instance.

Definition at line 943 of file meta.hpp.

## Member Function Documentation

## ◆ arg()

meta_type entt::meta_func::arg | ( | size_type | index | ) | const
| inlinenodiscardnoexcept

Returns the type of the i-th argument of a member function.

Parameters

  index | Index of the argument of which to return the type.

Returns
  The type of the i-th argument of a member function.

Definition at line 1631 of file meta.hpp.

## ◆ arity()

size_type entt::meta_func::arity | ( |  | ) | const
| inlinenodiscardnoexcept

Returns the number of arguments accepted by a member function.

Returns
  The number of arguments accepted by the member function.

Definition at line 959 of file meta.hpp.

## ◆ custom()

meta_custom entt::meta_func::custom | ( |  | ) | const
| inlinenodiscardnoexcept

Returns user defined data for a given meta object.

Returns
  User defined arbitrary data.

Definition at line 1026 of file meta.hpp.

## ◆ invoke() [1/2]

template<typename Instance = meta_handle, typename... Args>

meta_any entt::meta_func::invoke | ( | Instance && | instance,
|  | Args &&... | args ) const
| inline

Invokes the underlying function, if possible.

Template Parameters

  Instance | Type of instance to operate on.
  Args | Types of arguments to use to invoke the function.

Parameters

  instance | An instance that fits the underlying type.
  args | Parameters to use to invoke the function.

Returns
  A wrapper containing the returned value, if any.

Definition at line 1015 of file meta.hpp.

## ◆ invoke() [2/2]

template<typename Instance = meta_handle>

meta_any entt::meta_func::invoke | ( | Instance && | instance,
|  | meta_any *const | args,
|  | const size_type | sz ) const
| inline

Invokes the underlying function, if possible.

Template Parameters

  Instance | Type of instance to operate on.

Parameters

  instance | An instance that fits the underlying type.
  args | Parameters to use to invoke the function.
  sz | Number of parameters to use to invoke the function.

Returns
  A wrapper containing the returned value, if any.

Definition at line 1001 of file meta.hpp.

## ◆ is_const()

bool entt::meta_func::is_const | ( |  | ) | const
| inlinenodiscardnoexcept

Indicates whether a member function is constant or not.

Returns
  True if the member function is constant, false otherwise.

Definition at line 967 of file meta.hpp.

## ◆ is_static()

bool entt::meta_func::is_static | ( |  | ) | const
| inlinenodiscardnoexcept

Indicates whether a member function is static or not.

Returns
  True if the member function is static, false otherwise.

Definition at line 975 of file meta.hpp.

## ◆ name()

const char * entt::meta_func::name | ( |  | ) | const
| inlinenodiscardnoexcept

Returns the name assigned to a member function, if any.

Returns
  The name assigned to the member function, if any.

Definition at line 951 of file meta.hpp.

## ◆ next()

meta_func entt::meta_func::next | ( |  | ) | const
| inlinenodiscard

Returns the next overload of a given function, if any.

Returns
  The next overload of the given function, if any.

Definition at line 1034 of file meta.hpp.

## ◆ operator bool()

entt::meta_func::operator bool | ( |  | ) | const
| inlineexplicitnodiscardnoexcept

Returns true if an object is valid, false otherwise.

Returns
  True if the object is valid, false otherwise.

Definition at line 1039 of file meta.hpp.

## ◆ operator==()

bool entt::meta_func::operator== | ( | const meta_func & | other | ) | const
| inlinenodiscardnoexcept

Checks if two objects refer to the same type.

Parameters

  other | The object with which to compare.

Returns
  True if the objects refer to the same type, false otherwise.

Definition at line 1044 of file meta.hpp.

## ◆ ret()

meta_type entt::meta_func::ret | ( |  | ) | const
| inlinenodiscardnoexcept

Returns the return type of a member function.

Returns
  The return type of the member function.

Definition at line 1627 of file meta.hpp.

## ◆ traits()

template<typename Type>

Type entt::meta_func::traits | ( |  | ) | const
| inlinenodiscardnoexcept

Returns all meta traits for a given meta object.

Template Parameters

  Type | The type to convert the meta traits to.

Returns
  The registered meta traits, if any.

Definition at line 1021 of file meta.hpp.

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

- src/entt/meta/meta.hpp