[7297] Fixed profession spells sorting in trainer spell list at client.
[getmangos.git] / dep / ACE_wrappers / ace / String_Base.inl
blob859bceb4a34dd74cc64fb9a4e823128dabdda0d0
1 // -*- C++ -*-
2 //
3 // $Id: String_Base.inl 80826 2008-03-04 14:51:23Z wotte $
5 #include "ace/Malloc_Base.h"
6 #include "ace/Min_Max.h"
7 #include "ace/OS_NS_string.h"
8 #include "ace/OS_Memory.h"
10 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
12 template <class CHAR> ACE_INLINE void
13 ACE_String_Base<CHAR>::dump (void) const
15 #if defined (ACE_HAS_DUMP)
16   ACE_TRACE ("ACE_String_Base<CHAR>::dump");
17 #endif /* ACE_HAS_DUMP */
20 // Assignment method (does not copy memory)
21 template <class CHAR> ACE_INLINE ACE_String_Base<CHAR> &
22 ACE_String_Base<CHAR>::assign_nocopy (const ACE_String_Base<CHAR> &s)
24   ACE_TRACE ("ACE_String_Base<CHAR>::assign_nocopy");
25   this->set (s.rep_, s.len_, false);
26   return *this;
29 template <class CHAR> ACE_INLINE typename ACE_String_Base<CHAR>::size_type
30 ACE_String_Base<CHAR>::length (void) const
32   ACE_TRACE ("ACE_String_Base<CHAR>::length");
33   return this->len_;
36 template <class CHAR> ACE_INLINE size_t
37 ACE_String_Base<CHAR>::capacity (void) const
39   ACE_TRACE ("ACE_String_Base<CHAR>::capacity");
40   return this->buf_len_;
43 template <class CHAR> ACE_INLINE bool
44 ACE_String_Base<CHAR>::is_empty (void) const
46   return this->len_ == 0;
49 template <class CHAR> ACE_INLINE bool
50 ACE_String_Base<CHAR>::empty (void) const
52   return this->is_empty ();
55 template <class CHAR> ACE_INLINE ACE_String_Base<CHAR>
56 ACE_String_Base<CHAR>::substr (
57   typename ACE_String_Base<CHAR>::size_type offset,
58   typename ACE_String_Base<CHAR>::size_type length) const
60   ACE_TRACE ("ACE_String_Base<CHAR>::substr");
61   return this->substring (offset, length);
64 // Return the <slot'th> character in the string.
66 template <class CHAR> ACE_INLINE const CHAR &
67 ACE_String_Base<CHAR>::operator[] (
68   typename ACE_String_Base<CHAR>::size_type slot) const
70   ACE_TRACE ("ACE_String_Base<CHAR>::operator[]");
71   return this->rep_[slot];
74 // Return the <slot'th> character in the string by reference.
76 template <class CHAR> ACE_INLINE CHAR &
77 ACE_String_Base<CHAR>::operator[] (
78   typename ACE_String_Base<CHAR>::size_type slot)
80   ACE_TRACE ("ACE_String_Base<CHAR>::operator[]");
81   return this->rep_[slot];
84 template <class CHAR> ACE_INLINE const CHAR *
85 ACE_String_Base<CHAR>::fast_rep (void) const
87   return this->rep_;
90 template <class CHAR> ACE_INLINE const CHAR *
91 ACE_String_Base<CHAR>::c_str (void) const
93   return this->rep_;
96 // Less than comparison operator.
98 template <class CHAR> ACE_INLINE bool
99 ACE_String_Base<CHAR>::operator < (const ACE_String_Base<CHAR> &s) const
101   ACE_TRACE ("ACE_String_Base<CHAR>::operator <");
102   return compare (s) < 0;
105 // Greater than comparison operator.
107 template <class CHAR> ACE_INLINE bool
108 ACE_String_Base<CHAR>::operator > (const ACE_String_Base &s) const
110   ACE_TRACE ("ACE_String_Base<CHAR>::operator >");
111   return compare (s) > 0;
115 // Comparison operator.
117 template <class CHAR> ACE_INLINE bool
118 ACE_String_Base<CHAR>::operator!= (const ACE_String_Base<CHAR> &s) const
120   ACE_TRACE ("ACE_String_Base<CHAR>::operator!=");
121   return !(*this == s);
124 template <class CHAR> ACE_INLINE bool
125 ACE_String_Base<CHAR>::operator!= (const CHAR *s) const
127   return !(*this == s);
130 template <class CHAR> ACE_INLINE typename ACE_String_Base<CHAR>::size_type
131 ACE_String_Base<CHAR>::find (const ACE_String_Base<CHAR>&str,
132                              typename ACE_String_Base<CHAR>::size_type pos) const
134   ACE_TRACE ("ACE_String_Base<CHAR>::find");
135   return this->find (str.rep_, pos);
138 template <class CHAR> ACE_INLINE typename ACE_String_Base<CHAR>::size_type
139 ACE_String_Base<CHAR>::strstr (const ACE_String_Base<CHAR> &s) const
141   ACE_TRACE ("ACE_String_Base<CHAR>::strstr");
142   return this->find (s.rep_);
145 template <class CHAR> ACE_INLINE bool
146 operator== (const CHAR *s,
147             const ACE_String_Base<CHAR> &t)
149   return t == s;
152 template <class CHAR> ACE_INLINE bool
153 operator!= (const CHAR *s,
154             const ACE_String_Base<CHAR> &t)
156   return !(t == s);
159 ACE_END_VERSIONED_NAMESPACE_DECL