boost::openmethod::IsSmartPtr :: Boost.OpenMethod

# boost::openmethod::IsSmartPtr

Test if argument is a smart pointer (exposition only)

## Synopsis

Declared in `<boost/openmethod/core.hpp>`

    template<
        typename Class,
        class Registry>
    constexpr bool IsSmartPtr = detail::is_smart_ptr_aux<Class, Registry>::value;

## Description

Evaluates to `true` if `Class` is a smart pointer type, and false otherwise. `Class` is considered a smart pointer if `virtual_traits<Class, Registry>` exists and it defines a nested template `rebind<T>` that can be instantiated with `Class`.

## Template Parameters

Name | Description
--- | ---
Class | A class type.
Registry | A registry.

Created with MrDocs