v8toolkit
0.0.1
Utility library for embedding V8 Javascript engine in a c++ program
|
#include <utility>
#include <type_traits>
#include <functional>
#include <exception>
#include <typeinfo>
#include <memory>
Go to the source code of this file.
Namespaces | |
func | |
func::detail | |
Macros | |
#define | FUNC_NOEXCEPT noexcept |
#define | FUNC_TEMPLATE_NOEXCEPT(FUNCTOR, ALLOCATOR) noexcept(detail::is_inplace_allocated<FUNCTOR, ALLOCATOR>::value) |
#define | FUNC_CONSTEXPR constexpr |
#define | FUNC_MOVE(value) static_cast<typename std::remove_reference<decltype(value)>::type &&>(value) |
#define | FUNC_FORWARD(type, value) static_cast<type &&>(value) |
Typedefs | |
typedef const function_manager * | func::detail::manager_type |
Functions | |
template<typename Result , typename... Arguments> | |
Result | func::detail::empty_call (const functor_padding &, Arguments...) |
template<typename T > | |
T | func::detail::to_functor (T &&func) |
template<typename Result , typename Class , typename... Arguments> | |
auto | func::detail::to_functor (Result(Class::*func)(Arguments...)) -> decltype(std::mem_fn(func)) |
template<typename T > | |
bool | func::detail::is_null (const T &) |
template<typename Result , typename... Arguments> | |
bool | func::detail::is_null (Result(*const &function_pointer)(Arguments...)) |
template<typename Result , typename Class , typename... Arguments> | |
bool | func::detail::is_null (Result(Class::*const &function_pointer)(Arguments...)) |
template<typename T , typename Allocator > | |
static const function_manager & | func::detail::get_default_manager () |
template<typename T , typename Allocator > | |
static void | func::detail::create_manager (manager_storage_type &storage, Allocator &&allocator) |
template<typename T > | |
bool | func::operator== (std::nullptr_t, const function< T > &rhs) FUNC_NOEXCEPT |
template<typename T > | |
bool | func::operator== (const function< T > &lhs, std::nullptr_t) FUNC_NOEXCEPT |
template<typename T > | |
bool | func::operator!= (std::nullptr_t, const function< T > &rhs) FUNC_NOEXCEPT |
template<typename T > | |
bool | func::operator!= (const function< T > &lhs, std::nullptr_t) FUNC_NOEXCEPT |
template<typename T > | |
void | func::swap (function< T > &lhs, function< T > &rhs) |
class func::function |
Definition at line 48 of file stdfunctionreplacement.h.
struct func::detail::empty_struct |
Definition at line 61 of file stdfunctionreplacement.h.
struct func::detail::functor_type |
Definition at line 104 of file stdfunctionreplacement.h.
Class Members | ||
---|---|---|
decltype(to_functor(declval< T > ())) typedef |
type |
struct func::detail::typedeffer |
Definition at line 351 of file stdfunctionreplacement.h.
Class Members | ||
---|---|---|
typedef Result | result_type |
struct func::detail::typedeffer< Result, Argument > |
Definition at line 356 of file stdfunctionreplacement.h.
Class Members | ||
---|---|---|
typedef Result | result_type | |
typedef Argument | argument_type |
struct func::detail::typedeffer< Result, First_Argument, Second_Argument > |
Definition at line 362 of file stdfunctionreplacement.h.
Class Members | ||
---|---|---|
typedef Result | result_type | |
typedef First_Argument | first_argument_type | |
typedef Second_Argument | second_argument_type |
#define FUNC_NOEXCEPT noexcept |
Definition at line 17 of file stdfunctionreplacement.h.
Referenced by func::function< Result(Arguments...)>::function().
#define FUNC_TEMPLATE_NOEXCEPT | ( | FUNCTOR, | |
ALLOCATOR | |||
) | noexcept(detail::is_inplace_allocated<FUNCTOR, ALLOCATOR>::value) |
Definition at line 18 of file stdfunctionreplacement.h.
Referenced by func::function< Result(Arguments...)>::function().
#define FUNC_CONSTEXPR constexpr |
Definition at line 19 of file stdfunctionreplacement.h.
Referenced by func::detail::get_default_manager().
#define FUNC_MOVE | ( | value | ) | static_cast<typename std::remove_reference<decltype(value)>::type &&>(value) |
Definition at line 26 of file stdfunctionreplacement.h.
Referenced by func::detail::create_manager(), func::function< Result(Arguments...)>::function(), func::detail::function_manager_inplace_specialization< T, Allocator, Enable >::move_functor(), func::detail::function_manager_inplace_specialization< T, Allocator, typename std::enable_if<!is_inplace_allocated< T, Allocator >::value >::type >::move_functor(), and func::detail::function_manager::templated_call_move_and_destroy().
#define FUNC_FORWARD | ( | type, | |
value | |||
) | static_cast<type &&>(value) |
Definition at line 27 of file stdfunctionreplacement.h.
Referenced by func::detail::function_manager_inplace_specialization< T, Allocator, Enable >::call(), func::detail::function_manager_inplace_specialization< T, Allocator, typename std::enable_if<!is_inplace_allocated< T, Allocator >::value >::type >::call(), func::function< Result(Arguments...)>::function(), func::function< Result(Arguments...)>::initialize(), func::detail::function_manager_inplace_specialization< T, Allocator, Enable >::store_functor(), func::detail::function_manager_inplace_specialization< T, Allocator, typename std::enable_if<!is_inplace_allocated< T, Allocator >::value >::type >::store_functor(), and func::detail::to_functor().