26 lines
620 B
C++
26 lines
620 B
C++
#ifndef DOMAIN_FUNCTION_SIGNATURE_H
|
|
#define DOMAIN_FUNCTION_SIGNATURE_H
|
|
|
|
#include<functional>
|
|
#include<vector>
|
|
|
|
#include "value.h"
|
|
|
|
namespace domain {
|
|
|
|
typedef std::function<bool (std::vector<Value>)> FunctionCallback;
|
|
|
|
struct FunctionSignature {
|
|
std::string name;
|
|
std::vector<Value::ValueType> params;
|
|
FunctionCallback callback;
|
|
|
|
FunctionSignature(std::string name, std::vector<Value::ValueType> params, FunctionCallback callback): name(name), params(params), callback(callback) {}
|
|
};
|
|
|
|
std::vector<FunctionSignature> getSupportedFunctions();
|
|
|
|
} // namespace domain
|
|
|
|
#endif // DOMAIN_FUNCTIONSIGNATURE_H
|