Lines Matching defs:Bstr

73  * The Bstr class hides all this handling behind a std::string-like interface
83 * Starting with VirtualBox 3.2, like Utf8Str, Bstr no longer differentiates
84 * between NULL strings and empty strings. In other words, Bstr("") and
85 * Bstr(NULL) behave the same. In both cases, Bstr allocates no memory,
89 * @note All Bstr methods ASSUMES valid UTF-16 or UTF-8 input strings.
91 * from external sources before passing them to Bstr or Utf8Str.
93 class Bstr
97 Bstr()
101 Bstr(const Bstr &that)
106 Bstr(CBSTR that)
112 Bstr(const wchar_t *that)
119 Bstr(const RTCString &that)
124 Bstr(const char *that)
129 Bstr(const char *a_pThat, size_t a_cchMax)
134 ~Bstr()
139 Bstr& operator=(const Bstr &that)
146 Bstr& operator=(CBSTR that)
154 Bstr& operator=(const wchar_t *that)
162 Bstr& setNull()
201 int compare(const Bstr &that, CaseSensitivity cs = CaseSensitive) const
206 bool operator==(const Bstr &that) const { return !compare(that.m_bstr); }
209 bool operator!=(const Bstr &that) const { return !!compare(that.m_bstr); }
212 bool operator<(const Bstr &that) const { return compare(that.m_bstr) < 0; }
215 bool operator<=(const Bstr &that) const { return compare(that.m_bstr) <= 0; }
218 bool operator>(const Bstr &that) const { return compare(that.m_bstr) > 0; }
221 bool operator>=(const Bstr &that) const { return compare(that.m_bstr) >= 0; }
231 * (Bstr does not cache string lengths).
394 static const Bstr Empty;
472 inline bool operator==(CBSTR l, const Bstr &r) { return r.operator==(l); }
473 inline bool operator!=(CBSTR l, const Bstr &r) { return r.operator!=(l); }
474 inline bool operator==(BSTR l, const Bstr &r) { return r.operator==(l); }
475 inline bool operator!=(BSTR l, const Bstr &r) { return r.operator!=(l); }
485 * with UTF-16 strings (Bstr).
495 * from external sources before passing them to Utf8Str or Bstr.
511 Utf8Str(const Bstr &that)
553 Utf8Str& operator=(const Bstr &that)
655 Bstr bstr(*this);
671 Bstr bstr(*this);
724 friend class Bstr; /* to access our raw_copy() */
770 * The BstrFmt class is a shortcut to <tt>Bstr(Utf8StrFmt(...))</tt>.
772 class BstrFmt : public Bstr
795 * The BstrFmtVA class is a shortcut to <tt>Bstr(Utf8Str(format,va))</tt>.
797 class BstrFmtVA : public Bstr