| 2350 | FunctionBody::~FunctionBody() { delete this->graph; } |
| 2351 | |
| 2352 | class SymbolicGradientHelper { |
| 2353 | public: |
| 2354 | explicit SymbolicGradientHelper(const FunctionBody& f) : fbody_(&f) {} |
| 2355 | ~SymbolicGradientHelper() = default; |
| 2356 | |
| 2357 | std::unique_ptr<FunctionBody> Compute(); |
| 2358 | |
| 2359 | private: |
| 2360 | const FunctionBody* fbody_; |
| 2361 | |
| 2362 | // Makes a copy of fbody_ in gbody. |
| 2363 | void Copy(FunctionBody* gbody); |
| 2364 | |
| 2365 | TF_DISALLOW_COPY_AND_ASSIGN(SymbolicGradientHelper); |
| 2366 | }; |
| 2367 | |
| 2368 | void SymbolicGradientHelper::Copy(FunctionBody* gbody) { |
| 2369 | const Graph& src = *(fbody_->graph); |