From 5fbca0993146982ab1dbb0d352c1e15e40b3de22 Mon Sep 17 00:00:00 2001 From: Adrian Kummerländer Date: Wed, 14 May 2014 20:55:51 +0200 Subject: Moved responsibility for argument conversion to FunctionBase descendants * external functions may expect arguments with a type different from boost::filesystem::path so they are only provided raw string values * moved xalan string conversion logic into separate compilation unit --- src/support/filesystem_context.cc | 19 +++---------------- 1 file changed, 3 insertions(+), 16 deletions(-) (limited to 'src/support/filesystem_context.cc') diff --git a/src/support/filesystem_context.cc b/src/support/filesystem_context.cc index 30502b3..8395046 100644 --- a/src/support/filesystem_context.cc +++ b/src/support/filesystem_context.cc @@ -3,22 +3,9 @@ #include #include +#include "support/xalan_string.h" #include "support/xerces_string_guard.h" -namespace { - -inline std::string xalanToString(const xalan::XalanDOMString& text) { - xalan::CharVectorType castHelper; - text.transcode(castHelper); - - return std::string( - castHelper.begin(), - castHelper.end() - 1 - ); -} - -} - namespace InputXSLT { FilesystemContext::FilesystemContext(const xalan::Locator* locator): @@ -38,7 +25,7 @@ boost::filesystem::path FilesystemContext::resolve( boost::filesystem::path FilesystemContext::resolve( const xalan::XalanDOMString& path) const { - return this->resolve(xalanToString(path)); + return this->resolve(toString(path)); } void FilesystemContext::iterate( @@ -78,7 +65,7 @@ void FilesystemContext::iterate( const xalan::XalanDOMString& path, std::function func ) const { - this->iterate(xalanToString(path), func); + this->iterate(toString(path), func); } } -- cgit v1.2.3