docs: public static Injector createOverridingInjector(Injector originalInjector, com.google.inject.Module module) {
  		final Map<Key<?>, Binding<?>> bindings = originalInjector.getBindings();
  		return Guice.createInjector(Modules2.mixin((binder) -> {
  			for(Binding<?> binding: bindings.values()) {
  				final Type typeLiteral = binding.getKey().getTypeLiteral().getType();
  				if (typeLiteral != null) {
  					final String typeName = typeLiteral.getTypeName();
  					if (isValid(typeName)) {
  						binding.applyTo(binder);
  					}
  				}
  			}
  		}