add copy ctor

test=develop
revert-15207-remove_op_handle_lock_and_fix_var
sneaxiy 6 years ago
parent e02f67eff7
commit 68d91cd594

@ -60,6 +60,8 @@ class DDim {
DDim() : rank_(1) { dim_[0] = 0; }
DDim(const DDim& ddim) { this->CopyFrom(ddim); }
DDim(const int* d, int n) : rank_(n) {
dynamic_dim_assign(d, dim_.GetMutable(), n);
}
@ -138,6 +140,12 @@ class DDim {
return *reinterpret_cast<const Dim<D>*>(p);
}
inline void CopyFrom(const DDim& ddim) {
rank_ = ddim.rank_;
PADDLE_VISIT_DDIM(rank_,
(void)(UnsafeCast<kRank>() = ddim.UnsafeCast<kRank>()));
}
friend DDim slice_ddim(const DDim& dim, int begin, int end);
friend DDim stride(const DDim& ddim);
friend DDim stride_numel(const DDim& ddim);

Loading…
Cancel
Save