* \brief reset underlying value to another value * * \param successor new value */
| 466 | * \param successor new value |
| 467 | */ |
| 468 | inline void reset(ValueRef successor) { |
| 469 | static_assert(std::is_base_of_v<ObjectValue<T>, T>); |
| 470 | mgb_assert(m_storage); |
| 471 | mgb_assert(!m_storage->m_successor); |
| 472 | if (m_storage->m_watching) { |
| 473 | debug::notify_event("reset"); |
| 474 | } |
| 475 | m_storage->clear(); |
| 476 | m_storage->m_successor = ValueRef(successor.storage()); |
| 477 | } |
| 478 | |
| 479 | static inline const TypedValueRef nil; |
| 480 |
nothing calls this directly
no test coverage detected