Lines Matching refs:that
4 * Use of this source code is governed by a BSD-style license that can be
24 SkTLazy(const SkTLazy& that) : fPtr(that.fPtr ? new (&fStorage) T(*that.fPtr) : nullptr) {}
25 SkTLazy(SkTLazy&& that) : fPtr(that.fPtr ? new (&fStorage) T(std::move(*that.fPtr)) : nullptr){}
29 SkTLazy& operator=(const SkTLazy& that) {
30 if (that.isValid()) {
31 this->set(*that);
38 SkTLazy& operator=(SkTLazy&& that) {
39 if (that.isValid()) {
40 this->set(std::move(*that));
50 * set()) it will first be destroyed, so that a freshly initialized
61 * will always return the same pointer, so if it is called on a lazy that
101 * knows that the object has been initialized.
151 SkTCopyOnFirstWrite(const SkTCopyOnFirstWrite& that) { *this = that; }
152 SkTCopyOnFirstWrite( SkTCopyOnFirstWrite&& that) { *this = std::move(that); }
154 SkTCopyOnFirstWrite& operator=(const SkTCopyOnFirstWrite& that) {
155 fLazy = that.fLazy;
156 fObj = fLazy.isValid() ? fLazy.get() : that.fObj;
160 SkTCopyOnFirstWrite& operator=(SkTCopyOnFirstWrite&& that) {
161 fLazy = std::move(that.fLazy);
162 fObj = fLazy.isValid() ? fLazy.get() : that.fObj;