summaryrefslogtreecommitdiff
path: root/libxsd/xsd/cxx/xml/char-lcp.txx
diff options
context:
space:
mode:
Diffstat (limited to 'libxsd/xsd/cxx/xml/char-lcp.txx')
-rw-r--r--libxsd/xsd/cxx/xml/char-lcp.txx73
1 files changed, 0 insertions, 73 deletions
diff --git a/libxsd/xsd/cxx/xml/char-lcp.txx b/libxsd/xsd/cxx/xml/char-lcp.txx
deleted file mode 100644
index efcd0d0..0000000
--- a/libxsd/xsd/cxx/xml/char-lcp.txx
+++ /dev/null
@@ -1,73 +0,0 @@
-// file : xsd/cxx/xml/char-lcp.txx
-// license : GNU GPL v2 + exceptions; see accompanying LICENSE file
-
-#include <cstring> // std::memcpy
-
-#include <xercesc/util/XMLString.hpp>
-
-#include <xsd/cxx/config.hxx> // XSD_CXX11
-
-#ifdef XSD_CXX11
-# include <memory> // std::unique_ptr
-#else
-# include <xsd/cxx/auto-array.hxx>
-#endif
-
-#include <xsd/cxx/xml/std-memory-manager.hxx>
-
-namespace xsd
-{
- namespace cxx
- {
- namespace xml
- {
- template <typename C>
- std::basic_string<C> char_lcp_transcoder<C>::
- to (const XMLCh* s)
- {
- std_memory_manager mm;
-#ifdef XSD_CXX11
- std::unique_ptr<C[], std_memory_manager&> r (
-#else
- auto_array<C, std_memory_manager> r (
-#endif
- xercesc::XMLString::transcode (s, &mm), mm);
- return std::basic_string<C> (r.get ());
- }
-
- template <typename C>
- std::basic_string<C> char_lcp_transcoder<C>::
- to (const XMLCh* s, std::size_t len)
- {
-#ifdef XSD_CXX11
- std::unique_ptr<XMLCh[]> tmp (
-#else
- auto_array<XMLCh> tmp (
-#endif
- new XMLCh[len + 1]);
- std::memcpy (tmp.get (), s, len * sizeof (XMLCh));
- tmp[len] = XMLCh (0);
-
- std_memory_manager mm;
-#ifdef XSD_CXX11
- std::unique_ptr<C[], std_memory_manager&> r (
-#else
- auto_array<C, std_memory_manager> r (
-#endif
- xercesc::XMLString::transcode (tmp.get (), &mm), mm);
-
- tmp.reset ();
-
- return std::basic_string<C> (r.get ());
- }
-
- template <typename C>
- XMLCh* char_lcp_transcoder<C>::
- from (const C* s)
- {
- std_memory_manager mm;
- return xercesc::XMLString::transcode (s, &mm);
- }
- }
- }
-}