ChaiScript
Namespaces | Classes | Typedefs | Functions
chaiscript::detail Namespace Reference

Classes and functions reserved for internal use. More...

Namespaces

 threading
 If threading is enabled, then this namespace contains std thread classes.
 

Classes

class  Any
 
struct  Bare_Type
 
struct  Cast_Helper
 The exposed Cast_Helper object that by default just calls the Cast_Helper_Inner. More...
 
struct  Cast_Helper< Boxed_Number >
 Cast_Helper for converting from Boxed_Value to Boxed_Number. More...
 
struct  Cast_Helper< const Boxed_Number & >
 Cast_Helper for converting from Boxed_Value to Boxed_Number. More...
 
struct  Cast_Helper< const Boxed_Number >
 Cast_Helper for converting from Boxed_Value to Boxed_Number. More...
 
struct  Cast_Helper< const std::function< Signature > & >
 Cast helper to handle automatic casting to const std::function &. More...
 
struct  Cast_Helper< const std::function< Signature > >
 Cast helper to handle automatic casting to const std::function. More...
 
struct  Cast_Helper< std::function< Signature > >
 Cast helper to handle automatic casting to std::function. More...
 
struct  Cast_Helper_Inner
 Generic Cast_Helper_Inner, for casting to any type. More...
 
struct  Cast_Helper_Inner< Boxed_Value & >
 Cast_Helper_Inner for casting to a Boxed_Value & type. More...
 
struct  Cast_Helper_Inner< Boxed_Value >
 Cast_Helper_Inner for casting to a Boxed_Value type. More...
 
struct  Cast_Helper_Inner< const Boxed_Value & >
 
struct  Cast_Helper_Inner< const Boxed_Value >
 Cast_Helper_Inner for casting to a const Boxed_Value & type. More...
 
struct  Cast_Helper_Inner< const Result & >
 Cast_Helper_Inner for casting to a & type. More...
 
struct  Cast_Helper_Inner< const Result * >
 Cast_Helper_Inner for casting to a const * type. More...
 
struct  Cast_Helper_Inner< const Result *const & >
 
struct  Cast_Helper_Inner< const Result >
 
struct  Cast_Helper_Inner< const std::reference_wrapper< const Result > & >
 
struct  Cast_Helper_Inner< const std::reference_wrapper< const Result > >
 
struct  Cast_Helper_Inner< const std::reference_wrapper< Result > & >
 
struct  Cast_Helper_Inner< const std::reference_wrapper< Result > >
 
struct  Cast_Helper_Inner< const std::shared_ptr< const Result > & >
 
struct  Cast_Helper_Inner< const std::shared_ptr< const Result > >
 Cast_Helper_Inner for casting to a const std::shared_ptr<const> & type. More...
 
struct  Cast_Helper_Inner< const std::shared_ptr< Result > & >
 
struct  Cast_Helper_Inner< const std::shared_ptr< Result > >
 Cast_Helper_Inner for casting to a const std::shared_ptr<> & type. More...
 
struct  Cast_Helper_Inner< const std::unique_ptr< Result > & >
 Cast_Helper_Inner for casting to a std::unique_ptr<> & type. More...
 
struct  Cast_Helper_Inner< Result & >
 Cast_Helper_Inner for casting to a & type. More...
 
struct  Cast_Helper_Inner< Result && >
 Cast_Helper_Inner for casting to a && type. More...
 
struct  Cast_Helper_Inner< Result * >
 Cast_Helper_Inner for casting to a * type. More...
 
struct  Cast_Helper_Inner< Result *const & >
 
struct  Cast_Helper_Inner< std::reference_wrapper< const Result > >
 
struct  Cast_Helper_Inner< std::reference_wrapper< Result > >
 Cast_Helper_Inner for casting to a std::reference_wrapper type. More...
 
struct  Cast_Helper_Inner< std::shared_ptr< const Result > >
 Cast_Helper_Inner for casting to a std::shared_ptr<const> type. More...
 
struct  Cast_Helper_Inner< std::shared_ptr< Result > & >
 
struct  Cast_Helper_Inner< std::shared_ptr< Result > >
 Cast_Helper_Inner for casting to a std::shared_ptr<> type. More...
 
struct  Cast_Helper_Inner< std::unique_ptr< Result > & >
 Cast_Helper_Inner for casting to a std::unique_ptr<> & type. More...
 
struct  Cast_Helper_Inner< std::unique_ptr< Result > && >
 Cast_Helper_Inner for casting to a std::unique_ptr<> && type. More...
 
class  Dispatch_Engine
 Main class for the dispatchkit. More...
 
class  Dispatch_Function
 A Proxy_Function implementation that is able to take a vector of Proxy_Functions and perform a dispatch on them. More...
 
class  Dispatch_State
 
class  Dynamic_Caster
 
class  Dynamic_Conversion_Impl
 
struct  Exception_Handler_Base
 
struct  Exception_Handler_Impl
 
struct  Get_Type_Info
 Helper used to create a Type_Info object. More...
 
struct  Get_Type_Info< const std::reference_wrapper< T > & >
 
struct  Get_Type_Info< const std::shared_ptr< T > & >
 
struct  Get_Type_Info< std::reference_wrapper< T > >
 
struct  Get_Type_Info< std::shared_ptr< T > & >
 
struct  Get_Type_Info< std::shared_ptr< T > >
 
struct  Loadable_Module
 
struct  Stack_Holder
 
class  Static_Caster
 
class  Static_Conversion_Impl
 
class  Type_Conversion_Base
 
class  Type_Conversion_Impl
 

Typedefs

using Loadable_Module_Ptr = std::shared_ptr< Loadable_Module >
 

Functions

template<typename T >
constexpr T * get_pointer (T *t) noexcept
 
template<typename T >
T * get_pointer (const std::reference_wrapper< T > &t) noexcept
 
template<typename O , typename Ret , typename P1 , typename... Param>
constexpr auto bind_first (Ret(*f)(P1, Param...), O &&o)
 
template<typename O , typename Ret , typename Class , typename... Param>
constexpr auto bind_first (Ret(Class::*f)(Param...), O &&o)
 
template<typename O , typename Ret , typename P1 , typename... Param>
auto bind_first (const std::function< Ret(P1, Param...)> &f, O &&o)
 
template<typename F , typename O , typename Ret , typename Class , typename P1 , typename... Param>
constexpr auto bind_first (const F &fo, O &&o, Ret(Class::*f)(P1, Param...) const)
 
template<typename F , typename O >
constexpr auto bind_first (const F &f, O &&o)
 
template<typename T >
constexpr T * throw_if_null (T *t)
 
template<typename T >
Boxed_Value const_var_impl (const T &t)
 Takes a value, copies it and returns a Boxed_Value object that is immutable. More...
 
template<typename T >
Boxed_Value const_var_impl (T *t)
 Takes a pointer to a value, adds const to the pointed to type and returns an immutable Boxed_Value. More...
 
template<typename T >
Boxed_Value const_var_impl (const std::shared_ptr< T > &t)
 Takes a std::shared_ptr to a value, adds const to the pointed to type and returns an immutable Boxed_Value. More...
 
template<typename T >
Boxed_Value const_var_impl (const std::reference_wrapper< T > &t)
 Takes a std::reference_wrapper value, adds const to the referenced type and returns an immutable Boxed_Value. More...
 

Detailed Description

Classes and functions reserved for internal use.

Items in this namespace are not supported.

Function Documentation

◆ const_var_impl() [1/4]

template<typename T >
Boxed_Value chaiscript::detail::const_var_impl ( const T &  t)

Takes a value, copies it and returns a Boxed_Value object that is immutable.

Parameters
[in]tValue to copy and make const
Returns
Immutable Boxed_Value
See also
Boxed_Value::is_const

◆ const_var_impl() [2/4]

template<typename T >
Boxed_Value chaiscript::detail::const_var_impl ( T *  t)

Takes a pointer to a value, adds const to the pointed to type and returns an immutable Boxed_Value.

Does not copy the pointed to value.

Parameters
[in]tPointer to make immutable
Returns
Immutable Boxed_Value
See also
Boxed_Value::is_const

◆ const_var_impl() [3/4]

template<typename T >
Boxed_Value chaiscript::detail::const_var_impl ( const std::shared_ptr< T > &  t)

Takes a std::shared_ptr to a value, adds const to the pointed to type and returns an immutable Boxed_Value.

Does not copy the pointed to value.

Parameters
[in]tPointer to make immutable
Returns
Immutable Boxed_Value
See also
Boxed_Value::is_const

◆ const_var_impl() [4/4]

template<typename T >
Boxed_Value chaiscript::detail::const_var_impl ( const std::reference_wrapper< T > &  t)

Takes a std::reference_wrapper value, adds const to the referenced type and returns an immutable Boxed_Value.

Does not copy the referenced value.

Parameters
[in]tReference object to make immutable
Returns
Immutable Boxed_Value
See also
Boxed_Value::is_const