提交 f40988af 编写于 作者: Y Yi Wang

Correct the use of protobuf generated methods

上级 38f4b1d5
...@@ -69,18 +69,18 @@ class OpProtoAndCheckerMaker { ...@@ -69,18 +69,18 @@ class OpProtoAndCheckerMaker {
VariableBuilder AddInput(const std::string& name, VariableBuilder AddInput(const std::string& name,
const std::string& comment) { const std::string& comment) {
auto input = proto_->mutable_inputs()->Add(); VarProto* input = proto_->add_inputs();
*input->mutable_name() = name; input->set_name(name);
*input->mutable_comment() = comment; input->set_comment(comment);
return VariableBuilder{input, [=] { this->SetHasMultipleInput(); }, return VariableBuilder{input, [=] { this->SetHasMultipleInput(); },
nullptr}; nullptr};
} }
VariableBuilder AddOutput(const std::string& name, VariableBuilder AddOutput(const std::string& name,
const std::string& comment) { const std::string& comment) {
auto output = proto_->mutable_outputs()->Add(); VarProto* output = proto_->add_outputs();
*output->mutable_name() = name; output->set_name(name);
*output->mutable_comment() = comment; output->set_comment(comment);
return VariableBuilder{output, [=] { this->SetHasMultipleOutput(); }, return VariableBuilder{output, [=] { this->SetHasMultipleOutput(); },
[=] { this->SetHasTemporaryOutput(); }}; [=] { this->SetHasTemporaryOutput(); }};
} }
...@@ -89,17 +89,15 @@ class OpProtoAndCheckerMaker { ...@@ -89,17 +89,15 @@ class OpProtoAndCheckerMaker {
TypedAttrChecker<T>& AddAttr(const std::string& name, TypedAttrChecker<T>& AddAttr(const std::string& name,
const std::string& comment, const std::string& comment,
bool generated = false) { bool generated = false) {
auto attr = proto_->mutable_attrs()->Add(); AttrProto* attr = proto_->add_attrs();
*attr->mutable_name() = name; attr->set_name(name);
*attr->mutable_comment() = comment; attr->set_comment(comment);
attr->set_generated(generated); attr->set_generated(generated);
attr->set_type(AttrTypeID<T>()); attr->set_type(AttrTypeID<T>());
return op_checker_->AddAttrChecker<T>(name); return op_checker_->AddAttrChecker<T>(name);
} }
void AddComment(const std::string& comment) { void AddComment(const std::string& comment) { proto_->set_comment(comment); }
*(proto_->mutable_comment()) = comment;
}
private: private:
void SetHasMultiple(const std::string& in_out, bool* flag) { void SetHasMultiple(const std::string& in_out, bool* flag) {
...@@ -187,7 +185,7 @@ class OpRegistry { ...@@ -187,7 +185,7 @@ class OpRegistry {
OpProto& op_proto = protos()[op_type]; OpProto& op_proto = protos()[op_type];
auto maker = ProtoMakerType(&op_proto, &op_checker); auto maker = ProtoMakerType(&op_proto, &op_checker);
maker.Validate(); maker.Validate();
*op_proto.mutable_type() = op_type; op_proto.set_type(op_type);
PADDLE_ENFORCE( PADDLE_ENFORCE(
op_proto.IsInitialized(), op_proto.IsInitialized(),
"Fail to initialize %s's OpProto, because %s is not initialized", "Fail to initialize %s's OpProto, because %s is not initialized",
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册