cprover
safe_pointer< T > Class Template Reference

#include <safe_pointer.h>

Inheritance diagram for safe_pointer< T >:
[legend]

Public Member Functions

 operator bool () const
 
T * get () const
 
T & operator* () const
 
T * operator-> () const
 

Static Public Member Functions

static safe_pointer< T > create_null ()
 
static safe_pointer< T > create_non_null (T *target)
 
static safe_pointer< T > create_maybe_null (T *target)
 

Protected Member Functions

 safe_pointer (T *target)
 
 safe_pointer ()
 

Protected Attributes

T * ptr
 

Detailed Description

template<class T>
class safe_pointer< T >

Definition at line 15 of file safe_pointer.h.

Constructor & Destructor Documentation

◆ safe_pointer() [1/2]

template<class T>
safe_pointer< T >::safe_pointer ( T *  target)
inlineexplicitprotected

Definition at line 60 of file safe_pointer.h.

◆ safe_pointer() [2/2]

Member Function Documentation

◆ create_maybe_null()

template<class T>
static safe_pointer<T> safe_pointer< T >::create_maybe_null ( T *  target)
inlinestatic

Definition at line 51 of file safe_pointer.h.

◆ create_non_null()

template<class T>
static safe_pointer<T> safe_pointer< T >::create_non_null ( T *  target)
inlinestatic

Definition at line 44 of file safe_pointer.h.

◆ create_null()

template<class T>
static safe_pointer<T> safe_pointer< T >::create_null ( )
inlinestatic

Definition at line 39 of file safe_pointer.h.

◆ get()

template<class T>
T* safe_pointer< T >::get ( ) const
inline

Definition at line 23 of file safe_pointer.h.

◆ operator bool()

template<class T>
safe_pointer< T >::operator bool ( ) const
inline

Definition at line 18 of file safe_pointer.h.

◆ operator*()

template<class T>
T& safe_pointer< T >::operator* ( ) const
inline

Definition at line 29 of file safe_pointer.h.

◆ operator->()

template<class T>
T* safe_pointer< T >::operator-> ( ) const
inline

Definition at line 34 of file safe_pointer.h.

Member Data Documentation

◆ ptr

template<class T>
T* safe_pointer< T >::ptr
protected

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