schema_editor/comdel/domain/functionsignature.h

24 lines
602 B
C++

#ifndef DOMAIN_FUNCTION_SIGNATURE_H
#define DOMAIN_FUNCTION_SIGNATURE_H
#include<functional>
#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