Thank you both for your responses.
I’m going to switch to returning structs that implement an unexported
interface. I don’t have a super convincing justification, but here are the
reasons…
1: It’s unexported because it’s not expected to be implemented externally
and passed in. But if a
>From the perspective of "what difference would it make" the only thing that
comes immediately to my mind is that if you return an interface type that
is designed so that only types in your own package can or need to implement
it then you could potentially add other methods to it in future