ucommon
7.0.0
About: GNU uCommon C++ is a portable and optimized class framework for writing C++ applications that need to use threads and support concurrent synchronization, and that use sockets, XML parsing, object serialization, thread-optimized string and data structure classes, etc.. Fossies Dox: ucommon-7.0.0.tar.gz ("inofficial" and yet experimental doxygen-generated source code documentation) 
|
Go to the documentation of this file. 25 #ifndef _UCOMMON_GENERICS_H_ 26 #define _UCOMMON_GENERICS_H_ 28 #ifndef _UCOMMON_CPR_H_ 36 #ifndef UCOMMON_SYSRUNTIME 37 #define THROW(x) throw x 38 #define THROWS(x) throw(x) 39 #define THROWS_ANY throw() 41 #define THROW(x) ::abort() 75 inline void set(T* ptr) {
145 inline operator bool()
const {
155 template <
typename T>
240 return array[offset];
244 return &
array[offset];
251 inline operator bool()
const {
292 inline bool is(T&
object) {
293 return object.operator bool();
304 return (
bool)(
object.operator*() ==
nullptr);
315 return (
bool)(
object->operator*() ==
nullptr);
324 inline T*
dup(
const T&
object) {
325 return new T(
object);
335 return strdup(&
object);
358 memset((
void *)&
object, 0,
sizeof(T));
new((
caddr_t)&
object) T;
368 memcpy((
void *)target, (
void *)source,
sizeof(T));
378 memcpy((
void *)&target, (
void *)source,
sizeof(T));
387 inline void swap(T& o1, T& o2) {
400 inline T&
copy(
const T& src, T& to) {
409 inline T&
move(T& src, T& to) {
410 memcpy((
void *)&to, (
void *)&src,
sizeof(T));
433 if(((
size_t)
pointer) %
sizeof(T))
445 inline T& (
max)(T& o1, T& o2) {
446 return o1 > o2 ? o1 : o2;
456 inline T& (
min)(T& o1, T& o2) {
457 return o1 < o2 ? o1 : o2;
468 inline T& (
limit)(T& value, T& low, T& high) {
469 return (value < low) ? low : ((value > high) ? high : value);
void zero_unsafe(T &object)
bool bound(const T *pointer, const T *base, size_t count)
T &() limit(T &value, T &low, T &high)
pointer & operator=(const pointer< T > &ref)
pointer(const pointer< T > &ref)
void dupfree< char * >(char *object)
array_pointer & operator=(T *ptr)
void cpr_memswap(void *s1, void *s2, size_t size)
void reset_unsafe(T &object)
void set(const pointer< T > &ref)
array_pointer & operator=(const array_pointer< T > &ref)
void store_unsafe(T &target, const T *source)
T * operator()(size_t offset) const
pointer & operator=(T *ptr)
array_pointer(T *ptr=NULL)
void set(const array_pointer< T > &ref)
char * dup< char >(const char &object)
void copy_unsafe(T *target, const T *source)
T & deref_pointer(T *pointer)
array_pointer(const array_pointer< T > &ref)
T & operator[](size_t offset) const