reactor-core/src/main/java/reactor/core/publisher/Operators.java
@SuppressWarnings("unchecked")
	public static <T> Fuseable.ConditionalSubscriber<? super  T> toConditionalSubscriber(CoreSubscriber<? super T> actual) {
		Objects.requireNonNull(actual, "actual");

		Fuseable.ConditionalSubscriber<? super T> _actual;

		if (actual instanceof Fuseable.ConditionalSubscriber) {
			_actual = (Fuseable.ConditionalSubscriber<? super T>) actual;
		}
		else {
			_actual = new ConditionalSubscriberAdapter<>(actual);
		}

		return _actual;
	}
@SuppressWarnings("unchecked")
	public static <T> Fuseable.ConditionalSubscriber<? super  T> toConditionalSubscriber(CoreSubscriber<? super T> actual) {
		Objects.requireNonNull(actual, "actual");

		Fuseable.ConditionalSubscriber<? super T> _actual;

		if (actual instanceof Fuseable.ConditionalSubscriber) {
			_actual = (Fuseable.ConditionalSubscriber<? super T>) actual;
		}
		else {
			_actual = new ConditionalSubscriberAdapter<>(actual);
		}

		return _actual;
	}
If the actual {@link CoreSubscriber} is not {@link Fuseable.ConditionalSubscriber},
it will apply an adapter which directly maps all
{@link Fuseable.ConditionalSubscriber#tryOnNext(T)} to {@link CoreSubscriber#onNext(T)}
and always returns true as the result

@param <T> passed subscriber type

@param actual the {@link Subscriber} to adapt
@return a potentially adapted {@link Fuseable.ConditionalSubscriber}