| 976 | |
| 977 | namespace { |
| 978 | TFE_Op* GetFunc(TFE_Context* ctx, const tensorflow::NameAttrList& func, |
| 979 | TF_Status* status) { |
| 980 | TFE_Op* func_op = TFE_NewOp(ctx, func.name().data(), status); |
| 981 | for (const auto& attr : func.attr()) { |
| 982 | if (TF_GetCode(status) != TF_OK) return nullptr; |
| 983 | SetOpAttrValueScalar(ctx, func_op, attr.second, attr.first.data(), status); |
| 984 | if (TF_GetCode(status) != TF_OK) return nullptr; |
| 985 | } |
| 986 | return func_op; |
| 987 | } |
| 988 | } // namespace |
| 989 | |
| 990 | void TFE_ContextStartStep(TFE_Context* ctx) { ctx->context->StartStep(); } |
no test coverage detected