Moved Const-policy structs from SmartPtr.h to ConstPolicy.h.

git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@535 7ec92016-0320-0410-acc4-a06ded1c099a
This commit is contained in:
rich_sposato 2006-02-19 22:04:28 +00:00
parent 1c4109e72d
commit 059eba4ae1
3 changed files with 75 additions and 35 deletions

View file

@ -28,13 +28,12 @@
/// \ingroup SmartPointerGroup
/// \defgroup SmartPointerCheckingGroup Checking policies
/// \ingroup SmartPointerGroup
/// \defgroup SmartPointerConstGroup Propagating constness policies
/// \ingroup SmartPointerGroup
#include "SmallObj.h"
#include "TypeManip.h"
#include "static_check.h"
#include "RefToValue.h"
#include "ConstPolicy.h"
#include <functional>
#include <stdexcept>
@ -823,38 +822,6 @@ namespace Loki
};
////////////////////////////////////////////////////////////////////////////////
/// \class DontPropagateConst
///
/// \ingroup SmartPointerConstGroup
/// Don't propagate constness of pointed object (like a plain pointer)
////////////////////////////////////////////////////////////////////////////////
template<class T>
struct DontPropagateConst
{
typedef T Type;
};
////////////////////////////////////////////////////////////////////////////////
/// \class PropagateConst
///
/// \ingroup SmartPointerConstGroup
/// Propagate constness of pointed object (unlike a plain pointer)
////////////////////////////////////////////////////////////////////////////////
template<class T>
struct PropagateConst
{
typedef const T Type;
};
// default will not break exisiting code
#ifndef LOKI_DEFAULT_CONSTNESS
#define LOKI_DEFAULT_CONSTNESS DontPropagateConst
#endif
////////////////////////////////////////////////////////////////////////////////
// class template SmartPtr (declaration)
// The reason for all the fuss above
@ -1431,6 +1398,9 @@ namespace std
#endif // SMARTPTR_INC_
// $Log$
// Revision 1.17 2006/02/19 22:04:28 rich_sposato
// Moved Const-policy structs from SmartPtr.h to ConstPolicy.h.
//
// Revision 1.16 2006/02/14 11:54:46 syntheticpp
// rename SmartPtr-ByRef and ScopeGuard-ByRefHolder into RefToValue and move it to loki/RefToValue.h
//