Cutlass CUDA Templates for Linear Algebra Subroutines and Solvers

Public Types | Public Member Functions | List of all members
nv_std::unique_ptr< T, Deleter > Class Template Reference

std::unique_ptr

`#include <nv_std.h>`

## Public Types
typedef T * | pointer
typedef T | element_type
typedef Deleter | deleter_type

## Public Member Functions
| unique_ptr ()
| unique_ptr (pointer p)
| ~unique_ptr ()
pointer | get () const noexcept
| Returns a pointer to the managed object or nullptr if no object is owned. More...
pointer | release () noexcept
| Releases ownership of the managed object, if any. More...
void | reset (pointer p=pointer()) noexcept
| Replaces the managed object, deleting the old object. More...
void | swap (unique_ptr &other) noexcept
| Swaps the managed objects with *this and another unique_ptr. More...
Deleter & | get_deleter () noexcept
| Returns the deleter object. More...
Deleter const & | get_deleter () const noexcept
| Returns the deleter object. More...
| operator bool () const noexcept
| Checks whether an object is owned. More...
T & | operator* () const
| Dereferences the unique_ptr. More...
pointer | operator-> () const noexcept
| Returns a pointer to the managed object. More...
T & | operator[] (size_t i) const
| Array access to managed object. More...

## Member Typedef Documentation

## ◆ deleter_type

template<class T, class Deleter = nv_std::default_delete<T>>

typedef Deleter nv_std::unique_ptr< T, Deleter >::deleter_type

## ◆ element_type

template<class T, class Deleter = nv_std::default_delete<T>>

typedef T nv_std::unique_ptr< T, Deleter >::element_type

## ◆ pointer

template<class T, class Deleter = nv_std::default_delete<T>>

typedef T* nv_std::unique_ptr< T, Deleter >::pointer

## Constructor & Destructor Documentation

## ◆ unique_ptr() [1/2]

template<class T, class Deleter = nv_std::default_delete<T>>

nv_std::unique_ptr< T, Deleter >::unique_ptr | ( |  | ) |
| inline

## ◆ unique_ptr() [2/2]

template<class T, class Deleter = nv_std::default_delete<T>>

nv_std::unique_ptr< T, Deleter >::unique_ptr | ( | pointer | p | ) |
| inline

## ◆ ~unique_ptr()

template<class T, class Deleter = nv_std::default_delete<T>>

nv_std::unique_ptr< T, Deleter >::~unique_ptr | ( |  | ) |
| inline

## Member Function Documentation

## ◆ get()

template<class T, class Deleter = nv_std::default_delete<T>>

pointer nv_std::unique_ptr< T, Deleter >::get | ( |  | ) | const
| inline noexcept

## ◆ get_deleter() [1/2]

template<class T, class Deleter = nv_std::default_delete<T>>

Deleter& nv_std::unique_ptr< T, Deleter >::get_deleter | ( |  | ) |
| inline noexcept

## ◆ get_deleter() [2/2]

template<class T, class Deleter = nv_std::default_delete<T>>

Deleter const& nv_std::unique_ptr< T, Deleter >::get_deleter | ( |  | ) | const
| inline noexcept

## ◆ operator bool()

template<class T, class Deleter = nv_std::default_delete<T>>

nv_std::unique_ptr< T, Deleter >::operator bool | ( |  | ) | const
| inline noexcept

## ◆ operator*()

template<class T, class Deleter = nv_std::default_delete<T>>

T& nv_std::unique_ptr< T, Deleter >::operator* | ( |  | ) | const
| inline

## ◆ operator->()

template<class T, class Deleter = nv_std::default_delete<T>>

pointer nv_std::unique_ptr< T, Deleter >::operator-> | ( |  | ) | const
| inline noexcept

## ◆ operator[]()

template<class T, class Deleter = nv_std::default_delete<T>>

T& nv_std::unique_ptr< T, Deleter >::operator[] | ( | size_t | i | ) | const
| inline

## ◆ release()

template<class T, class Deleter = nv_std::default_delete<T>>

pointer nv_std::unique_ptr< T, Deleter >::release | ( |  | ) |
| inline noexcept

## ◆ reset()

template<class T, class Deleter = nv_std::default_delete<T>>

void nv_std::unique_ptr< T, Deleter >::reset | ( | pointer | p = `pointer()` | ) |
| inline noexcept

## ◆ swap()

template<class T, class Deleter = nv_std::default_delete<T>>

void nv_std::unique_ptr< T, Deleter >::swap | ( | unique_ptr< T, Deleter > & | other | ) |
| inline noexcept

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

- nv_std.h