The Mutate function mutates a value while preserving interior object and array references.
⚠️ The Mutate function is designed to prevent unintended actions in state-aware frameworks such as React. It updates interior non-reference values while retaining object and array references, which can be helpful when optimizing for state-aware systems.
Example usage is shown below.
const Y = { z: 1 } // const Y = { z: 1 }
const X = { y: Y } // const X = { y: { z: 1 } }
const Z = { x: X } // const Z = { x: { y: { z: 1 } } }
// Mutation
Value.Mutate(Z, { x: { y: { z: 2 } } }) // Z = { x: { y: { z: 2 } } }
const A = Z.x.y.z === 2 // const A = true
const B = Z.x.y === Y // const B = true
const C = Z.x === X // const C = true