| 517 | } |
| 518 | |
| 519 | void ApiDefMap::UpdateDocs() { |
| 520 | for (auto& name_and_api_def : map_) { |
| 521 | auto& api_def = name_and_api_def.second; |
| 522 | CHECK_GT(api_def.endpoint_size(), 0); |
| 523 | const string canonical_name = api_def.endpoint(0).name(); |
| 524 | if (api_def.graph_op_name() != canonical_name) { |
| 525 | RenameInDocs(api_def.graph_op_name(), canonical_name, &api_def); |
| 526 | } |
| 527 | for (const auto& in_arg : api_def.in_arg()) { |
| 528 | if (in_arg.name() != in_arg.rename_to()) { |
| 529 | RenameInDocs(in_arg.name(), in_arg.rename_to(), &api_def); |
| 530 | } |
| 531 | } |
| 532 | for (const auto& out_arg : api_def.out_arg()) { |
| 533 | if (out_arg.name() != out_arg.rename_to()) { |
| 534 | RenameInDocs(out_arg.name(), out_arg.rename_to(), &api_def); |
| 535 | } |
| 536 | } |
| 537 | for (const auto& attr : api_def.attr()) { |
| 538 | if (attr.name() != attr.rename_to()) { |
| 539 | RenameInDocs(attr.name(), attr.rename_to(), &api_def); |
| 540 | } |
| 541 | } |
| 542 | } |
| 543 | } |
| 544 | |
| 545 | const tensorflow::ApiDef* ApiDefMap::GetApiDef(const string& name) const { |
| 546 | return gtl::FindOrNull(map_, name); |