From c5a11763985172f54d0da8a2a2778f882f3656e5 Mon Sep 17 00:00:00 2001 From: Adrian Kummerländer Date: Sun, 25 May 2014 21:49:59 +0200 Subject: Implemented basic external "execute" function * enables execution of external programs ** second parameter is passed to stdin ** stdout is captured and returned ** based on booost::process * this was implemented to enable access to external content preprocessors such as markdown --- src/function/execute.h | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 src/function/execute.h (limited to 'src/function/execute.h') diff --git a/src/function/execute.h b/src/function/execute.h new file mode 100644 index 0000000..12167da --- /dev/null +++ b/src/function/execute.h @@ -0,0 +1,28 @@ +#ifndef INPUTXSLT_SRC_FUNCTION_EXECUTE_H_ +#define INPUTXSLT_SRC_FUNCTION_EXECUTE_H_ + +#include "base.h" + +namespace InputXSLT { + +class FunctionExecute : public FunctionBase< + FunctionExecute, + std::string, + std::string +> { + public: + using FunctionBase::FunctionBase; + + protected: + friend FunctionBase; + + xercesc::DOMDocument* constructDocument( + const FilesystemContext&, + const FunctionBase::parameter_tuple& + ); + +}; + +} + +#endif // INPUTXSLT_SRC_FUNCTION_EXECUTE_H_ -- cgit v1.2.3