ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/rxvtutil.h
(Generate patch)

Comparing rxvt-unicode/src/rxvtutil.h (file contents):
Revision 1.37 by root, Mon Jul 21 16:51:31 2008 UTC vs.
Revision 1.38 by root, Wed Nov 5 14:43:54 2008 UTC

111 111
112// for m >= -n, ensure remainder lies between 0..n-1 112// for m >= -n, ensure remainder lies between 0..n-1
113#define MOD(m,n) (((m) + (n)) % (n)) 113#define MOD(m,n) (((m) + (n)) % (n))
114 114
115// makes dynamically allocated objects zero-initialised 115// makes dynamically allocated objects zero-initialised
116struct zero_initialized { 116struct zero_initialized
117{
117 void *operator new (size_t s); 118 void *operator new (size_t s);
118 void operator delete (void *p, size_t s); 119 void operator delete (void *p, size_t s);
119}; 120};
120 121
121/* simplevec taken (and heavily modified), from: 122/* simplevec taken (and heavily modified), from:
122 * 123 *
123 * MICO --- a free CORBA implementation 124 * MICO --- a free CORBA implementation
124 * Copyright (C) 1997-98 Kay Roemer & Arno Puder 125 * Copyright (C) 1997-98 Kay Roemer & Arno Puder
125 */ 126 */
126template<class T> 127template<class T>
127struct simplevec { 128struct simplevec
129{
128 typedef T* iterator; 130 typedef T* iterator;
129 typedef const T* const_iterator; 131 typedef const T* const_iterator;
130 typedef unsigned long size_type; 132 typedef unsigned long size_type;
131 133
132private: 134private:
387 } 389 }
388}; 390};
389 391
390#if 0 392#if 0
391template<typename T> 393template<typename T>
392struct rxvt_vec : simplevec<void *> { 394struct rxvt_vec : simplevec<void *>
395{
393 typedef T *iterator; 396 typedef T *iterator;
394 397
395 void push_back (T d) { simplevec<void *>::push_back ((void *)d); } 398 void push_back (T d) { simplevec<void *>::push_back ((void *)d); }
396 T pop_back () { return (T*)simplevec<void *>::pop_back (); } 399 T pop_back () { return (T*)simplevec<void *>::pop_back (); }
397 void erase (int i) { erase (begin () + i); } 400 void erase (int i) { erase (begin () + i); }
402 const T &operator [] (int i) const { return * (const T *) (& ((* (const simplevec<void *> *)this)[i])); } 405 const T &operator [] (int i) const { return * (const T *) (& ((* (const simplevec<void *> *)this)[i])); }
403}; 406};
404#endif 407#endif
405 408
406template<typename T> 409template<typename T>
407struct auto_ptr { 410struct auto_ptr
411{
408 T *p; 412 T *p;
409 413
410 auto_ptr () : p (0) { } 414 auto_ptr () : p (0) { }
411 auto_ptr (T *a) : p (a) { } 415 auto_ptr (T *a) : p (a) { }
412 416

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines