trunk/branch integration: documentation

This commit is contained in:
Marian Krivos 2011-08-23 06:53:27 +00:00
parent 5cdea0c145
commit 9110aafc25
2 changed files with 64 additions and 60 deletions

View File

@ -1,7 +1,7 @@
//
// TypeChecks.h
// MetaProgramming.h
//
// $Id: //poco/svn/Foundation/include/Poco/MetaProgramming.h#2 $
// $Id: //poco/1.4/Foundation/include/Poco/MetaProgramming.h#1 $
//
// Library: Foundation
// Package: Core
@ -36,8 +36,8 @@
//
#ifndef Foundation_TypeChecks_INCLUDED
#define Foundation_TypeChecks_INCLUDED
#ifndef Foundation_MetaProgramming_INCLUDED
#define Foundation_MetaProgramming_INCLUDED
#include "Poco/Foundation.h"
@ -48,10 +48,10 @@ namespace Poco {
template <typename T>
struct IsReference
///Use this struct to determine if a template type is a reference
/// Use this struct to determine if a template type is a reference.
{
enum
{
enum
{
VALUE = 0
};
};
@ -77,13 +77,12 @@ struct IsReference<const T&>
};
template <typename T>
struct IsConst
///Use this struct to determine if a template type is a const type
/// Use this struct to determine if a template type is a const type.
{
enum
{
enum
{
VALUE = 0
};
};
@ -111,21 +110,21 @@ struct IsConst<const T>
template <typename T, int i>
struct IsConst<const T[i]>
/// Specialization for const char arrays
/// Specialization for const char arrays
{
enum
{
VALUE = 1
};
enum
{
VALUE = 1
};
};
template <typename T>
struct TypeWrapper
/// Use the type wrapper if you want to dedecouple constness and references from template types
/// Use the type wrapper if you want to decouple constness and references from template types.
{
typedef T TYPE;
typedef const T CONSTTYPE;
typedef T TYPE;
typedef const T CONSTTYPE;
typedef T& REFTYPE;
typedef const T& CONSTREFTYPE;
};
@ -161,8 +160,7 @@ struct TypeWrapper<T&>
};
} // namespace Poco
#endif
#endif // Foundation_MetaProgramming_INCLUDED

View File

@ -46,7 +46,13 @@
#if defined(POCO_OS_FAMILY_WINDOWS)
#if defined(_WIN32_WCE)
#include "Poco/Mutex_WINCE.h"
#else
#include "Poco/Mutex_WIN32.h"
#endif
#elif defined(POCO_VXWORKS)
#include "Poco/Mutex_VX.h"
#else
#include "Poco/Mutex_POSIX.h"
#endif
@ -167,51 +173,51 @@ private:
class Foundation_API NullMutex
/// A NullMutex is an empty mutex implementation
/// which performs no locking at all. Useful in policy driven design
/// where the type of mutex used can be now a template parameter allowing the user to switch
/// between thread-safe and not thread-safe depending on his need
/// Works with the ScopedLock class
/// A NullMutex is an empty mutex implementation
/// which performs no locking at all. Useful in policy driven design
/// where the type of mutex used can be now a template parameter allowing the user to switch
/// between thread-safe and not thread-safe depending on his need
/// Works with the ScopedLock class
{
public:
typedef Poco::ScopedLock<NullMutex> ScopedLock;
NullMutex()
/// creates the NullMutex.
{
}
~NullMutex()
/// destroys the NullMutex.
{
}
typedef Poco::ScopedLock<NullMutex> ScopedLock;
NullMutex()
/// Creates the NullMutex.
{
}
~NullMutex()
/// Destroys the NullMutex.
{
}
void lock()
/// Always succeeds
{
}
void lock(long milliseconds)
/// Always succeeds
{
}
void lock()
/// Does nothing.
{
}
void lock(long)
/// Does nothing.
{
}
bool tryLock()
/// Always returns true
{
return true;
}
bool tryLock()
/// Does nothing and always returns true.
{
return true;
}
bool tryLock(long)
/// Always returns true
{
return true;
}
bool tryLock(long)
/// Does nothing and always returns true.
{
return true;
}
void unlock()
/// Always succeeds
{
}
void unlock()
/// Does nothing.
{
}
};