aboutsummaryrefslogtreecommitdiff
path: root/src/function/transform.cc
diff options
context:
space:
mode:
authorAdrian Kummerländer2014-06-07 17:24:44 +0200
committerAdrian Kummerländer2014-06-07 17:24:44 +0200
commit5f6fc45749b99e9013f04c95a525f2d627db01bf (patch)
tree6ba7598c874b89e893fb9b5f66e2cf26a85ac063 /src/function/transform.cc
parent272b34c1a4639cd0f909bfb52d30339c93b0c42b (diff)
downloadInputXSLT-5f6fc45749b99e9013f04c95a525f2d627db01bf.tar
InputXSLT-5f6fc45749b99e9013f04c95a525f2d627db01bf.tar.gz
InputXSLT-5f6fc45749b99e9013f04c95a525f2d627db01bf.tar.bz2
InputXSLT-5f6fc45749b99e9013f04c95a525f2d627db01bf.tar.lz
InputXSLT-5f6fc45749b99e9013f04c95a525f2d627db01bf.tar.xz
InputXSLT-5f6fc45749b99e9013f04c95a525f2d627db01bf.tar.zst
InputXSLT-5f6fc45749b99e9013f04c95a525f2d627db01bf.zip
Improved FunctionBase constructDocument parameter propagation
* replaced std::tuple constructing Mapper template methods with direct XObjectArgVectorType unpacking ** XObjectValue::get template method is applied directly using parameter pack unpacking * implemented custom IndexSequence / Sequence type to provide vector indexes * modified all external functions to provide matching constructDocument overloads
Diffstat (limited to 'src/function/transform.cc')
-rw-r--r--src/function/transform.cc17
1 files changed, 5 insertions, 12 deletions
diff --git a/src/function/transform.cc b/src/function/transform.cc
index 844dee9..7e6207c 100644
--- a/src/function/transform.cc
+++ b/src/function/transform.cc
@@ -30,19 +30,12 @@ namespace InputXSLT {
xercesc::DOMDocument* FunctionTransform::constructDocument(
const InputXSLT::FilesystemContext& fsContext,
- const FunctionBase::parameter_tuple& parameters
+ std::string transformationPath,
+ std::string targetPath,
+ xalan::XObjectPtr parameterObject
) {
- const std::string transformationPath(
- fsContext.resolve(std::get<0>(parameters)).string()
- );
-
- const std::string targetPath(
- fsContext.resolve(std::get<1>(parameters)).string()
- );
-
- const xalan::XObjectPtr& parameterObject(
- std::get<2>(parameters)
- );
+ transformationPath = fsContext.resolve(transformationPath).string();
+ targetPath = fsContext.resolve(targetPath).string();
xercesc::DOMDocument* const domDocument(
xercesc::DOMImplementation::getImplementation()->createDocument(