EmptyHandle
EmptyHandle discards the data of an existing handle. It sets the handle's master pointer to NIL, allowing subsequent allocations and compactions to
overwrite its data area.
theHandle is a handle to a relocatable data area, typically a value obtained via
NewHandle. For this function to succeed, theHandle must not be overrides the non-purgeable attribute).
memWZErr (-111) Illegal operation on a free block
memPurErr (-112) Illegal operation on a locked block
Notes: EmptyHandle preemptively discards the contents of theHandle. Note that it (and ALL Handles with the same value) remain valid (meaning that there is still a master pointer allocated for this handle), but empty (unlike
Most routines that operate on handles will return a nilHandleErr if passed
an empty handle.
theHandle need not be purgeable, but it must not be locked.
You might use this to free space in a custom heap zone grow procedure (see
some space back later, making theHandle (and all copies) back into valid
handles that lead to a real data area.