diff options
author | William R. Otte <wotte@dre.vanderbilt.edu> | 2008-03-04 14:51:23 +0000 |
---|---|---|
committer | William R. Otte <wotte@dre.vanderbilt.edu> | 2008-03-04 14:51:23 +0000 |
commit | 99aa8c60282c7b8072eb35eb9ac815702f5bf586 (patch) | |
tree | bda96bf8c3a4c2875a083d7b16720533c8ffeaf4 /ACE/ace/String_Base.inl | |
parent | c4078c377d74290ebe4e66da0b4975da91732376 (diff) | |
download | ATCD-99aa8c60282c7b8072eb35eb9ac815702f5bf586.tar.gz |
undoing accidental deletion
Diffstat (limited to 'ACE/ace/String_Base.inl')
-rw-r--r-- | ACE/ace/String_Base.inl | 159 |
1 files changed, 159 insertions, 0 deletions
diff --git a/ACE/ace/String_Base.inl b/ACE/ace/String_Base.inl new file mode 100644 index 00000000000..28b5e824aa7 --- /dev/null +++ b/ACE/ace/String_Base.inl @@ -0,0 +1,159 @@ +// -*- C++ -*- +// +// $Id$ + +#include "ace/Malloc_Base.h" +#include "ace/Min_Max.h" +#include "ace/OS_NS_string.h" +#include "ace/OS_Memory.h" + +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + +template <class CHAR> ACE_INLINE void +ACE_String_Base<CHAR>::dump (void) const +{ +#if defined (ACE_HAS_DUMP) + ACE_TRACE ("ACE_String_Base<CHAR>::dump"); +#endif /* ACE_HAS_DUMP */ +} + +// Assignment method (does not copy memory) +template <class CHAR> ACE_INLINE ACE_String_Base<CHAR> & +ACE_String_Base<CHAR>::assign_nocopy (const ACE_String_Base<CHAR> &s) +{ + ACE_TRACE ("ACE_String_Base<CHAR>::assign_nocopy"); + this->set (s.rep_, s.len_, false); + return *this; +} + +template <class CHAR> ACE_INLINE typename ACE_String_Base<CHAR>::size_type +ACE_String_Base<CHAR>::length (void) const +{ + ACE_TRACE ("ACE_String_Base<CHAR>::length"); + return this->len_; +} + +template <class CHAR> ACE_INLINE size_t +ACE_String_Base<CHAR>::capacity (void) const +{ + ACE_TRACE ("ACE_String_Base<CHAR>::capacity"); + return this->buf_len_; +} + +template <class CHAR> ACE_INLINE bool +ACE_String_Base<CHAR>::is_empty (void) const +{ + return this->len_ == 0; +} + +template <class CHAR> ACE_INLINE bool +ACE_String_Base<CHAR>::empty (void) const +{ + return this->is_empty (); +} + +template <class CHAR> ACE_INLINE ACE_String_Base<CHAR> +ACE_String_Base<CHAR>::substr ( + typename ACE_String_Base<CHAR>::size_type offset, + typename ACE_String_Base<CHAR>::size_type length) const +{ + ACE_TRACE ("ACE_String_Base<CHAR>::substr"); + return this->substring (offset, length); +} + +// Return the <slot'th> character in the string. + +template <class CHAR> ACE_INLINE const CHAR & +ACE_String_Base<CHAR>::operator[] ( + typename ACE_String_Base<CHAR>::size_type slot) const +{ + ACE_TRACE ("ACE_String_Base<CHAR>::operator[]"); + return this->rep_[slot]; +} + +// Return the <slot'th> character in the string by reference. + +template <class CHAR> ACE_INLINE CHAR & +ACE_String_Base<CHAR>::operator[] ( + typename ACE_String_Base<CHAR>::size_type slot) +{ + ACE_TRACE ("ACE_String_Base<CHAR>::operator[]"); + return this->rep_[slot]; +} + +template <class CHAR> ACE_INLINE const CHAR * +ACE_String_Base<CHAR>::fast_rep (void) const +{ + return this->rep_; +} + +template <class CHAR> ACE_INLINE const CHAR * +ACE_String_Base<CHAR>::c_str (void) const +{ + return this->rep_; +} + +// Less than comparison operator. + +template <class CHAR> ACE_INLINE bool +ACE_String_Base<CHAR>::operator < (const ACE_String_Base<CHAR> &s) const +{ + ACE_TRACE ("ACE_String_Base<CHAR>::operator <"); + return compare (s) < 0; +} + +// Greater than comparison operator. + +template <class CHAR> ACE_INLINE bool +ACE_String_Base<CHAR>::operator > (const ACE_String_Base &s) const +{ + ACE_TRACE ("ACE_String_Base<CHAR>::operator >"); + return compare (s) > 0; +} + + +// Comparison operator. + +template <class CHAR> ACE_INLINE bool +ACE_String_Base<CHAR>::operator!= (const ACE_String_Base<CHAR> &s) const +{ + ACE_TRACE ("ACE_String_Base<CHAR>::operator!="); + return !(*this == s); +} + +template <class CHAR> ACE_INLINE bool +ACE_String_Base<CHAR>::operator!= (const CHAR *s) const +{ + return !(*this == s); +} + +template <class CHAR> ACE_INLINE typename ACE_String_Base<CHAR>::size_type +ACE_String_Base<CHAR>::find (const ACE_String_Base<CHAR>&str, + typename ACE_String_Base<CHAR>::size_type pos) const +{ + ACE_TRACE ("ACE_String_Base<CHAR>::find"); + return this->find (str.rep_, pos); +} + +template <class CHAR> ACE_INLINE typename ACE_String_Base<CHAR>::size_type +ACE_String_Base<CHAR>::strstr (const ACE_String_Base<CHAR> &s) const +{ + ACE_TRACE ("ACE_String_Base<CHAR>::strstr"); + return this->find (s.rep_); +} + +template <class CHAR> ACE_INLINE bool +operator== (const CHAR *s, + const ACE_String_Base<CHAR> &t) +{ + return t == s; +} + +template <class CHAR> ACE_INLINE bool +operator!= (const CHAR *s, + const ACE_String_Base<CHAR> &t) +{ + return !(t == s); +} + +ACE_END_VERSIONED_NAMESPACE_DECL |