From 5aec7dbeb03d19c701683b909cff977b455dfc5a Mon Sep 17 00:00:00 2001 From: wanghuancoder Date: Thu, 19 Nov 2020 17:00:28 +0800 Subject: [PATCH] use forward declarations for framework.pb.h (#28494) * use forward declarations for framework.pb.h, test=develop * use forward declarations for framework.pb.h, test=develop --- paddle/fluid/framework/op_registry.h | 28 +++++++++++++++++++++++- paddle/fluid/framework/shape_inference.h | 28 +++++++++++++++++++++++- 2 files changed, 54 insertions(+), 2 deletions(-) diff --git a/paddle/fluid/framework/op_registry.h b/paddle/fluid/framework/op_registry.h index 77383386fa..e32ab8c744 100644 --- a/paddle/fluid/framework/op_registry.h +++ b/paddle/fluid/framework/op_registry.h @@ -28,7 +28,6 @@ limitations under the License. */ #include "glog/logging.h" // For VLOG() #include "paddle/fluid/framework/attribute.h" #include "paddle/fluid/framework/details/op_registry.h" -#include "paddle/fluid/framework/framework.pb.h" #include "paddle/fluid/framework/grad_op_desc_maker.h" #include "paddle/fluid/framework/op_desc.h" #include "paddle/fluid/framework/operator.h" @@ -41,6 +40,33 @@ class ExecutionContext; } // namespace framework } // namespace paddle +namespace paddle { +namespace framework { +namespace proto { + +class BlockDesc; +class OpDesc; +class OpDesc_Attr; +class OpDesc_Var; +class OpProto; +class OpProto_Attr; +class OpProto_Var; +class OpVersion; +class OpVersionMap; +class OpVersionMap_OpVersionPair; +class ProgramDesc; +class VarDesc; +class VarType; +class VarType_LoDTensorArrayDesc; +class VarType_LoDTensorDesc; +class VarType_ReaderDesc; +class VarType_TensorDesc; +class VarType_Tuple; +class Version; +} // namespace proto +} // namespace framework +} // namespace paddle + namespace paddle { namespace framework { diff --git a/paddle/fluid/framework/shape_inference.h b/paddle/fluid/framework/shape_inference.h index 8d8a8f01b3..cfeaeab52c 100644 --- a/paddle/fluid/framework/shape_inference.h +++ b/paddle/fluid/framework/shape_inference.h @@ -19,10 +19,36 @@ limitations under the License. */ #include "paddle/fluid/framework/attribute.h" #include "paddle/fluid/framework/ddim.h" -#include "paddle/fluid/framework/framework.pb.h" #include "paddle/fluid/framework/var_desc.h" #include "paddle/fluid/framework/variable.h" +namespace paddle { +namespace framework { +namespace proto { + +class BlockDesc; +class OpDesc; +class OpDesc_Attr; +class OpDesc_Var; +class OpProto; +class OpProto_Attr; +class OpProto_Var; +class OpVersion; +class OpVersionMap; +class OpVersionMap_OpVersionPair; +class ProgramDesc; +class VarDesc; +class VarType; +class VarType_LoDTensorArrayDesc; +class VarType_LoDTensorDesc; +class VarType_ReaderDesc; +class VarType_TensorDesc; +class VarType_Tuple; +class Version; +} // namespace proto +} // namespace framework +} // namespace paddle + namespace paddle { namespace framework { -- GitLab