mirror of https://github.com/golang/go.git
566 B
566 B
New unique package
The new [unique] package provides facilities for canonicalizing values (like "interning" or "hash-consing").
Any value of comparable type may be canonicalized with the new
Make[T] function, which produces a reference to a canonical copy of
the value in the form of a Handle[T].
Two Handle[T] are equal if and only if the values used to produce the
handles are equal, allowing programs to deduplicate values and reduce
their memory footprint.
Comparing two Handle[T] values is efficient, reducing down to a simple
pointer comparison.