strus  0.17
scalarFunctionParserInterface.hpp
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2014 Patrick P. Frey
3  *
4  * This Source Code Form is subject to the terms of the Mozilla Public
5  * License, v. 2.0. If a copy of the MPL was not distributed with this
6  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
7  */
10 #ifndef _STRUS_SCALAR_FUNCTION_PARSER_INTERFACE_HPP_INCLUDED
11 #define _STRUS_SCALAR_FUNCTION_PARSER_INTERFACE_HPP_INCLUDED
12 #include <string>
13 #include <vector>
14 
15 namespace strus
16 {
18 class ScalarFunctionInterface;
19 
22 {
23 public:
26 
32  const std::string& src,
33  const std::vector<std::string>& argumentNames) const=0;
34 
37  virtual const char* getDescription() const=0;
38 };
39 
40 }// namespace
41 #endif
42 
virtual const char * getDescription() const =0
Get a description of the parser syntax.
Interface for parsing scalar function definitions.
Definition: scalarFunctionParserInterface.hpp:21
virtual ~ScalarFunctionParserInterface()
Destructor.
Definition: scalarFunctionParserInterface.hpp:25
virtual ScalarFunctionInterface * createFunction(const std::string &src, const std::vector< std::string > &argumentNames) const =0
Parses a function from source and instantiates a function object.
Interface for a scalar function type.
Definition: scalarFunctionInterface.hpp:24