code: public void unregisterDisposeListener(Provider.DisposeListener disposeListener) {
          if (disposeListeners != null) {
              disposeListeners.remove(disposeListener);
  
              if (disposeListeners.isEmpty()) {
                  disposeListeners = null;
              }
          }
      }
docs: Unregister {@link Provider.DisposeListener} which will be called when either
  <ul>
  <li>The provider doesn't have a scope instances and a provided instance is dereferenced</li>
  <li>The provider has a scope instances and the provider is dereferenced with 0 reference count</li>
  </ul>
  
  @param disposeListener The listener