aboutsummaryrefslogtreecommitdiffhomepage
path: root/tensorflow/c/c_api_function.cc
diff options
context:
space:
mode:
authorGravatar Igor Ganichev <iga@google.com>2017-09-19 14:48:51 -0700
committerGravatar TensorFlower Gardener <gardener@tensorflow.org>2017-09-19 14:52:35 -0700
commitd67679f1aee7c037fd9c2ac35121720133cd5bd9 (patch)
treeafbd64028c999013886dab1bbe8b45e55b31810b /tensorflow/c/c_api_function.cc
parent74680a3904f88238f58f9566d8bd8e80c3f9dca4 (diff)
Implement TF_FunctionImportFunctionDef
PiperOrigin-RevId: 169304057
Diffstat (limited to 'tensorflow/c/c_api_function.cc')
-rw-r--r--tensorflow/c/c_api_function.cc13
1 files changed, 13 insertions, 0 deletions
diff --git a/tensorflow/c/c_api_function.cc b/tensorflow/c/c_api_function.cc
index b3a1654c07..7848883e3e 100644
--- a/tensorflow/c/c_api_function.cc
+++ b/tensorflow/c/c_api_function.cc
@@ -532,4 +532,17 @@ void TF_FunctionToFunctionDef(TF_Function* func, TF_Buffer* output_func_def,
status->status = MessageToBuffer(func->fdef, output_func_def);
}
+TF_Function* TF_FunctionImportFunctionDef(const TF_Buffer* func_def,
+ TF_Status* status) {
+ TF_Function* func = new TF_Function();
+ if (!func->fdef.ParseFromArray(func_def->data, func_def->length)) {
+ status->status = InvalidArgument(
+ "Invalid FunctionDef given to TF_FunctionImportFunctionDef");
+ TF_DeleteFunction(func);
+ return nullptr;
+ }
+ status->status = tensorflow::Status::OK();
+ return func;
+}
+
void TF_DeleteFunction(TF_Function* func) { delete func; }