code: public static <T> Mono<T> from(Publisher<? extends T> source) {
  		if (source instanceof Mono) {
  			@SuppressWarnings("unchecked")
  			Mono<T> casted = (Mono<T>) source;
  			return casted;
  		}
  		if (source instanceof FluxSourceMono
  				|| source instanceof FluxSourceMonoFuseable) {
  			@SuppressWarnings("unchecked")
  			FluxFromMonoOperator<T, T> wrapper = (FluxFromMonoOperator<T,T>) source;
  			@SuppressWarnings("unchecked")
  			Mono<T> extracted = (Mono<T>) wrapper.source;
  			return extracted;
  		}
  		if (source instanceof Flux) {
  			@SuppressWarnings("unchecked")
  			Flux<T> casted = (Flux<T>) source;
  			return casted.next();
  		}
  		return onAssembly(new MonoFromPublisher<>(source));
  	}
docs: Expose the specified {@link Publisher} with the {@link Mono} API, and ensure it will emit 0 or 1 item.
  The source emitter will be cancelled on the first `onNext`.
  <p>
  <img class="marble" src="doc-files/marbles/fromForMono.svg" alt="">
  <p>
  @param source the {@link Publisher} source
  @param <T> the source type
  
  @return the next item emitted as a {@link Mono}