The Pointer namespace is an implementation of RFC 6901 Json Pointer. It provides functions to read and write values using Json Pointers.
The Get function will return a value at the pointer or undefined.
const X = { x: 1 }
const A = Value.Pointer.Get(X, '/x') // const A = 1
const B = Value.Pointer.Get(X, '/y') // const B = undefined
The Set will update a value at the given pointer. If the path does not exist it is created.
const X = { x: 1 }
Value.Pointer.Set(X, '/x', 100) // X' = { x: 100 }
Value.Pointer.Set(X, '/y', 200) // X' = { x: 100, y: 200 }
The Has function will returns true if a value exists at the pointer.
const X = { x: 1 }
const A = Value.Pointer.Has(X, '/x') // const A = true
const B = Value.Pointer.Has(X, '/y') // const B = false
The Delete function will delete a value at the given path or no action if the path does not exist.
const X = { x: 1 }
Value.Pointer.Delete(X, '/x') // X' = { }
Value.Pointer.Delete(X, '/y') // X' = { } - no-action