Allocating a map[string]uint64 can be very expensive if called from a hot loop. Add a new function DecomposeToBuffer() that writes the ID components into a struct. The new function is implicitly covered by the existing tests because Decompose() uses it under the covers.
Allocating a map[string]uint64 can be very expensive if called from a hot loop. Add a new function DecomposeToBuffer() that writes the ID components into a struct. The new function is implicitly covered by the existing tests because Decompose() uses it under the covers.