STLdoc
STLdocumentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Private Types | Private Attributes | List of all members
_Fake_no_copy_callable_adapter< _Types > Class Template Reference

Public Member Functions

 _Fake_no_copy_callable_adapter (_Types &&..._Vals)
 
 _Fake_no_copy_callable_adapter (const _Myt &_Other)
 
 _Fake_no_copy_callable_adapter (_Myt &&_Other)=default
 
_Mytoperator= (const _Myt &)=delete
 
_Mytoperator= (_Myt &&)=delete
 
auto operator() () -> decltype(_Invoke_stored(_STD move(_STD declval< _Storaget & >())))
 

Private Types

typedef _Fake_no_copy_callable_adapter< _Types...> _Myt
 
typedef tuple< decay_t< _Types >...> _Storaget
 

Private Attributes

_Storaget _Storage
 

Member Typedef Documentation

template<class... _Types>
typedef _Fake_no_copy_callable_adapter<_Types...> _Fake_no_copy_callable_adapter< _Types >::_Myt
private
template<class... _Types>
typedef tuple<decay_t<_Types>...> _Fake_no_copy_callable_adapter< _Types >::_Storaget
private

Constructor & Destructor Documentation

template<class... _Types>
_Fake_no_copy_callable_adapter< _Types >::_Fake_no_copy_callable_adapter ( _Types &&...  _Vals)
inlineexplicit
1874  : _Storage(_STD forward<_Types>(_Vals)...)
1875  { // Initializes _Fake_no_copy_callable_adapter with a decayed callable object and arguments
1876  }
_Storaget _Storage
Definition: future:1894
template<class... _Types>
_Fake_no_copy_callable_adapter< _Types >::_Fake_no_copy_callable_adapter ( const _Myt _Other)
inline
1879  : _Storage(_STD move(_Other._Storage))
1880  { // Very Bad Things^TM
1881  _STD terminate();
1882  }
_Storaget _Storage
Definition: future:1894
void __CRTDECL terminate() _NOEXCEPT
Definition: exception:208
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1290
template<class... _Types>
_Fake_no_copy_callable_adapter< _Types >::_Fake_no_copy_callable_adapter ( _Myt &&  _Other)
default

Member Function Documentation

template<class... _Types>
auto _Fake_no_copy_callable_adapter< _Types >::operator() ( ) -> decltype(_Invoke_stored(_STD move(_STD declval<_Storaget&>())))
inline
1889  { // Invokes stored callable object
1890  return (_Invoke_stored(_STD move(_Storage)));
1891  }
auto _Invoke_stored(tuple< _Types...> &&_Tuple) -> decltype(_Invoke_stored_explicit(_STD move(_Tuple), make_integer_sequence< size_t, sizeof...(_Types)>()))
Definition: mutex:475
Definition: functional:424
constexpr remove_reference< _Ty >::type && move(_Ty &&_Arg) _NOEXCEPT
Definition: type_traits:1290
template<class... _Types>
_Myt& _Fake_no_copy_callable_adapter< _Types >::operator= ( const _Myt )
delete
template<class... _Types>
_Myt& _Fake_no_copy_callable_adapter< _Types >::operator= ( _Myt &&  )
delete

Member Data Documentation

template<class... _Types>
_Storaget _Fake_no_copy_callable_adapter< _Types >::_Storage
mutableprivate

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