21 lines
No EOL
678 B
C++
Executable file
21 lines
No EOL
678 B
C++
Executable file
#ifndef EVAL_ADD_H
|
|
#define EVAL_ADD_H
|
|
|
|
#include "eval_op.h"
|
|
|
|
typedef std::map<std::string, std::shared_ptr<eval_op>> eval_op_proto_map;
|
|
|
|
class eval_add: public eval_op {
|
|
tensor compute(const tensor &a, const tensor &b);
|
|
std::shared_ptr<eval_op> clone(const expression &expr) override;
|
|
public:
|
|
eval_add() {}
|
|
eval_add(const expression &expr): eval_op(expr) {}
|
|
void eval(vars_type &variables, const kwargs_type &kwargs) override;
|
|
static void store_prototype(eval_op_proto_map &proto_map) {
|
|
assert(proto_map.find("Add") == proto_map.end());
|
|
proto_map["Add"] = std::make_shared<eval_add>(); // where is expr?
|
|
}
|
|
}; // class eval_add
|
|
|
|
#endif |