code: protected final ConverterExpression<S, D> with(Provider<?> provider) {
      assertBuilder();
      return builder.with(provider);
    }
docs: Specifies a provider to be used for providing instances of the mapped property. When used with
  deep mapping the {@code provider} should provide an instance of the <b>last</b> destination
  property. See the <a href="#6">EDSL examples</a>.
  
  @param provider to use for providing the destination property
  @throws IllegalStateException if called from outside the context of
  {@link PropertyMap#configure()}.