boost::openmethod::virtual_traits<boost::intrusive_ptr<Class>, Registry>::cast :: Boost.OpenMethod

# boost::openmethod::virtual_traits<boost::intrusive_ptr<Class>, Registry>::cast

Cast method argument to overrider argument.

## Synopsis

Declared in `<boost/openmethod/interop/boost_intrusive_ptr.hpp>`

    template<class OverriderType>
    static
    auto
    cast(boost::intrusive_ptr<Class> const& obj);

## Description

Cast a `boost::intrusive_ptr` to a `boost::intrusive_ptr` to a derived class, using a static cast if possible, and a dynamic cast otherwise.

## Return Value

A `boost::intrusive_ptr` value.

## Template Parameters

Name | Description
--- | ---
OverriderType | The type required by the overrider (a `boost::intrusive_ptr`).

## Parameters

Name | Description
--- | ---
obj | The method's argument..

Created with MrDocs