ModErn Text Analysis
META Enumerates Textual Applications
Public Member Functions | Private Attributes | List of all members
meta::util::pimpl< Impl > Class Template Reference

Class to assist in simple pointer-to-implementation classes. More...

#include <pimpl.h>

Public Member Functions

 pimpl ()
 Constructor.
 
 pimpl (pimpl &&)
 Move constructor.
 
pimploperator= (pimpl &&)
 Move assignment.
 
template<class... Args>
 pimpl (Args &&... args)
 Forwarding constructor. More...
 
 ~pimpl ()
 Destructor.
 
Impl * operator-> ()
 Member access operator. More...
 
const Impl * operator-> () const
 Member access operator. More...
 
Impl & operator* ()
 Dereference operator. More...
 
const Impl & operator* () const
 Dereference operator. More...
 

Private Attributes

std::unique_ptr< Impl > impl_
 The internal pointer to the Impl class.
 

Detailed Description

template<class Impl>
class meta::util::pimpl< Impl >

Class to assist in simple pointer-to-implementation classes.

Constructor & Destructor Documentation

§ pimpl()

template<class Impl >
template<class... Args>
meta::util::pimpl< Impl >::pimpl ( Args &&...  args)

Forwarding constructor.

Parameters
argsThe arguments to forward to the Impl class.

Member Function Documentation

§ operator->() [1/2]

template<class Impl >
Impl * meta::util::pimpl< Impl >::operator-> ( )

Member access operator.

Returns
a pointer to the underlying Impl class (member access).

§ operator->() [2/2]

template<class Impl >
const Impl * meta::util::pimpl< Impl >::operator-> ( ) const

Member access operator.

Const version.

Returns
a pointer to the underlying Impl class (member access).

§ operator*() [1/2]

template<class Impl >
Impl & meta::util::pimpl< Impl >::operator* ( )

Dereference operator.

Returns
the underlying Impl class.

§ operator*() [2/2]

template<class Impl >
const Impl & meta::util::pimpl< Impl >::operator* ( ) const

Dereference operator.

Const version.

Returns
the underlying Impl class.

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