XQuilla/include/xqilla/utils/XStr.hpp

36 lines
596 B
C++
Raw Permalink Normal View History

2020-02-17 22:05:20 +01:00
#ifndef _XSTR_HPP
#define _XSTR_HPP
#include <xqilla/framework/XQillaExport.hpp>
#include <xercesc/util/XercesDefs.hpp>
2020-02-17 22:17:06 +01:00
#include <xercesc/framework/MemoryManager.hpp>
2020-02-17 22:05:20 +01:00
// From Xerces 2.0
class XQILLA_API XStr
{
public :
2020-02-17 22:17:06 +01:00
XStr(const char* const toTranscode, XERCES_CPP_NAMESPACE_QUALIFIER MemoryManager *mm = 0);
~XStr();
2020-02-17 22:05:20 +01:00
2020-02-17 22:17:06 +01:00
const XMLCh *str() const
{
return str_;
}
2020-02-17 22:05:20 +01:00
2020-02-17 22:17:06 +01:00
XMLCh *adopt()
{
XMLCh *result = (XMLCh*)str_;
str_ = 0;
return result;
}
2020-02-17 22:05:20 +01:00
private :
2020-02-17 22:17:06 +01:00
XMLCh *str_;
XERCES_CPP_NAMESPACE_QUALIFIER MemoryManager *mm_;
2020-02-17 22:05:20 +01:00
};
2020-02-17 22:17:06 +01:00
#define X(strg) XStr(strg).str()
2020-02-17 22:05:20 +01:00
#endif