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

#include <src/util/ScopeGuard.h>

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

Loki::ScopeGuardImplBase

List of all members.

Public Member Functions

void Execute ()
 ~ScopeGuardImpl5 () throw ()

Static Public Member Functions

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

Protected Member Functions

 ScopeGuardImpl5 (F fun, P1 p1, P2 p2, P3 p3, P4 p4, P5 p5)

Protected Attributes

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


Detailed Description

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

Implementation class for a standalone function or class static function with five 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, typename P5>
Loki::ScopeGuardImpl5< F, P1, P2, P3, P4, P5 >::~ScopeGuardImpl5 (  )  throw () [inline]

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


Member Function Documentation

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

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


Member Data Documentation

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

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

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

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

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

template<typename F, typename P1, typename P2, typename P3, typename P4, typename P5>
const P5 Loki::ScopeGuardImpl5< F, P1, P2, P3, P4, P5 >::p5_ [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