diff options
author | Adrian Kummerländer | 2014-05-15 17:23:13 +0200 |
---|---|---|
committer | Adrian Kummerländer | 2014-05-15 17:23:13 +0200 |
commit | ec6abad74348e9b577e1dd63b41d65263bb0334a (patch) | |
tree | 95d35491c723b12687e067ee2a480b37daf19da2 /src/support/tuple/xobject_value.cc | |
parent | 5fbca0993146982ab1dbb0d352c1e15e40b3de22 (diff) | |
download | InputXSLT-ec6abad74348e9b577e1dd63b41d65263bb0334a.tar InputXSLT-ec6abad74348e9b577e1dd63b41d65263bb0334a.tar.gz InputXSLT-ec6abad74348e9b577e1dd63b41d65263bb0334a.tar.bz2 InputXSLT-ec6abad74348e9b577e1dd63b41d65263bb0334a.tar.lz InputXSLT-ec6abad74348e9b577e1dd63b41d65263bb0334a.tar.xz InputXSLT-ec6abad74348e9b577e1dd63b41d65263bb0334a.tar.zst InputXSLT-ec6abad74348e9b577e1dd63b41d65263bb0334a.zip |
Adapted FunctionBase template to accept multiple argument types
* FunctionBase::argument_tuple is a std::tuple specialization type specialized on the argument types passed inside the variadic template argument of FunctionBase
* added tuple Mapper and XObjectValue helper namespaces containing recursive tuple construction and XObjectPtr value extraction logic
* changed all external function implementations accordingly
* this change was implemented to uniformly support different external function argument types than std::string
Diffstat (limited to 'src/support/tuple/xobject_value.cc')
-rw-r--r-- | src/support/tuple/xobject_value.cc | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/support/tuple/xobject_value.cc b/src/support/tuple/xobject_value.cc new file mode 100644 index 0000000..3883436 --- /dev/null +++ b/src/support/tuple/xobject_value.cc @@ -0,0 +1,18 @@ +#include "xobject_value.h" + +#include <string> + +#include "support/xalan_string.h" + +namespace InputXSLT { + +namespace XObjectValue { + +template <> +std::string get<std::string>(const xalan::XObjectPtr& ptr) { + return toString(ptr->str()); +} + +} + +} |