core/play/src/main/java/play/inject/BindingKey.java
public Binding<T> to(final Provider<? extends T> provider) {
    return underlying.to(provider).asJava();
  }
public Binding<T> to(final Provider<? extends T> provider) {
    return underlying.to(provider).asJava();
  }
Bind this binding key to the given provider instance.

<p>This provider instance will be invoked to obtain the implementation for the key.