You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Refactor shim interfaces to not be implementable externally (#3100)
This PR is a pure refactor. The `shim` interfaces are not intended to be
implemented externally. They change often and due to the fact they are
public we have kept accruing new variants to keep the public interface
backwards compatible which add unnecessary complexity.
This PR adds `InternalInterface` interface with a private method which
is only implemented by `internalinter.Internal`. This can be embedded in
interfaces which are not intended to be implemented outside of the
bridge. Implementers in the bridge can embed the implementation of
`InternalInterface` but external users can not.
This means that we are free to add methods to interfaces which are not
intended to be implemented externally. This will in turn allow us to
delete some of the `Schema` and `Resource` variants under `shim`.
0 commit comments