| 990 | } |
| 991 | |
| 992 | Status FunctionCallFrame::GetRetvals(std::vector<Tensor>* rets) const { |
| 993 | rets->clear(); |
| 994 | rets->reserve(rets_.size()); |
| 995 | for (size_t i = 0; i < rets_.size(); ++i) { |
| 996 | const auto& item = rets_[i]; |
| 997 | if (item.has_val) { |
| 998 | rets->push_back(item.val); |
| 999 | } else { |
| 1000 | return errors::Internal("Retval[", i, "] does not have value"); |
| 1001 | } |
| 1002 | } |
| 1003 | return Status::OK(); |
| 1004 | } |
| 1005 | |
| 1006 | Status FunctionCallFrame::ConsumeRetvals(std::vector<Tensor>* rets, |
| 1007 | bool allow_dead_tensors) { |