Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 > Class Template Reference
[Exception-safe code]

#include <src/util/ScopeGuard.h>

Inheritance diagram for Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >:

Loki::ScopeGuardImplBase

List of all members.

Public Member Functions

void Execute ()
 ~ScopeGuardImpl4 () throw ()

Static Public Member Functions

static ScopeGuardImpl4< F, P1,
P2, P3, P4 > 
MakeGuard (F fun, P1 p1, P2 p2, P3 p3, P4 p4)

Protected Member Functions

 ScopeGuardImpl4 (F fun, P1 p1, P2 p2, P3 p3, P4 p4)

Protected Attributes

fun_
const P1 p1_
const P2 p2_
const P3 p3_
const P4 p4_


Detailed Description

template<typename F, typename P1, typename P2, typename P3, typename P4>
class Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >

Implementation class for a standalone function or class static function with four parameters. Each parameter is copied by value - use Loki::ByRef if you must use a reference instead. ScopeGuard ignores any value returned from the call within the Execute function.

This class has a single standalone helper function, MakeGuard which creates and returns a ScopeGuard.


Constructor & Destructor Documentation

template<typename F, typename P1, typename P2, typename P3, typename P4>
Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::~ScopeGuardImpl4 (  )  throw () [inline]

template<typename F, typename P1, typename P2, typename P3, typename P4>
Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::ScopeGuardImpl4 ( fun,
P1  p1,
P2  p2,
P3  p3,
P4  p4 
) [inline, protected]


Member Function Documentation

template<typename F, typename P1, typename P2, typename P3, typename P4>
void Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::Execute (  )  [inline]

template<typename F, typename P1, typename P2, typename P3, typename P4>
static ScopeGuardImpl4< F, P1, P2, P3, P4 > Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::MakeGuard ( fun,
P1  p1,
P2  p2,
P3  p3,
P4  p4 
) [inline, static]


Member Data Documentation

template<typename F, typename P1, typename P2, typename P3, typename P4>
F Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::fun_ [protected]

template<typename F, typename P1, typename P2, typename P3, typename P4>
const P1 Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::p1_ [protected]

template<typename F, typename P1, typename P2, typename P3, typename P4>
const P2 Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::p2_ [protected]

template<typename F, typename P1, typename P2, typename P3, typename P4>
const P3 Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::p3_ [protected]

template<typename F, typename P1, typename P2, typename P3, typename P4>
const P4 Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::p4_ [protected]


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

Generated on Tue Jul 28 16:22:16 2009 for Orxonox by  doxygen 1.5.6