Lines Matching defs:shared
217 static void Destroy(SharedPayloadBase* shared) {
218 delete static_cast<SharedPayload*>(shared);
287 if (IsShared()) buffer_.shared->Ref();
295 if (IsShared()) buffer_.shared->Ref();
323 // Called on shared instances when the reference count reaches 0.
386 SharedPayloadBase* shared;
390 if (IsShared() && buffer_.shared->Unref()) {
391 vtable_->shared_destroy(buffer_.shared);
421 return static_cast<Shared*>(m.buffer_.shared)->value;
425 m.buffer_.shared = new Shared(std::forward<Arg>(arg));
435 return *static_cast<Shared*>(m.buffer_.shared)->value;
438 m.buffer_.shared = new Shared(std::unique_ptr<M>(impl));