tree 8496e15ea486b16b3735f81004c3ee6f4471bfe3
parent 77b690bf6c1049022bf199e25da3927a56d0a60d
author Joe Tsai <joetsai@digital-static.net> 1551131648 -0800
committer Joe Tsai <joetsai@digital-static.net> 1551141127 -0800

Support AllowUnexportedWithinModule

For sufficiently large codebases with many struct types defined,
it is untenable to specify a large list of all types in the repository
that AllowUnexported permits visibility for.

In Go, we observe that code with a shared owner often lives in the same
repository, and all sub-packages within a repository often share a common
package path prefix. Thus, permit expressing visibility allowances in terms
of package path prefixes instead of individual types.

While not explicitly documented, this feature allows the universal comparing
of unexported fields on all types:
	cmp.Equal(x, y, cmp.AllowUnexportedWithinModule(""))

This "feature" is intentionally undocumented (but a natural side-effect of the
expressed behavior of PackagePrefix) since it considered to be bad practice.
