@Nullable
	public static <T> RuntimeException onNextPollError(T value, Throwable error, Context context) {
    """
	Find the {@link OnNextFailureStrategy} to apply to the calling async operator (which could be
	a local error mode defined in the {@link Context}) and apply it.
	<p>
	Returns a {@link RuntimeException} if errors are fatal for the error mode, in which
	case the operator poll should throw the returned error. On the contrary if the
	error mode allows the sequence to continue, returns {@code null} in which case
	the operator should retry the {@link Queue#poll() poll()}.
	
	@param value The onNext value that caused an error.
	@param error The error.
	@param context The most significant {@link Context} in which to look for an {@link OnNextFailureStrategy}.
	@param <T> The type of the value causing the error.
	@return a {@link Throwable} to propagate through onError if the strategy is
	terminal and cancelled the subscription, null if not.
    """
		error = unwrapOnNextError(error);
		OnNextFailureStrategy strategy = onNextErrorStrategy(context);
		if (strategy.test(error, value)) {
			//some strategies could still return an exception, eg. if the consumer throws
			Throwable t = strategy.process(error, value, context);
			if (t != null) return Exceptions.propagate(t);
			return null;
		}
		else {
			Throwable t = onOperatorError(null, error, value, context);
			return Exceptions.propagate(t);
		}
	}
@Nullable
	public static <T> RuntimeException onNextPollError(T value, Throwable error, Context context) {
		error = unwrapOnNextError(error);
		OnNextFailureStrategy strategy = onNextErrorStrategy(context);
		if (strategy.test(error, value)) {
			//some strategies could still return an exception, eg. if the consumer throws
			Throwable t = strategy.process(error, value, context);
			if (t != null) return Exceptions.propagate(t);
			return null;
		}
		else {
			Throwable t = onOperatorError(null, error, value, context);
			return Exceptions.propagate(t);
		}
	}
@ Nullable public static < T > RuntimeException onNextPollError ( T value , Throwable error , Context context ) { error = unwrapOnNextError ( error ) ; OnNextFailureStrategy strategy = onNextErrorStrategy ( context ) ; if ( strategy . test ( error , value ) ) { //some strategies could still return an exception, eg. if the consumer throws Throwable t = strategy . process ( error , value , context ) ; if ( t != null ) return Exceptions . propagate ( t ) ; return null ; } else { Throwable t = onOperatorError ( null , error , value , context ) ; return Exceptions . propagate ( t ) ; } }
Find the {@link OnNextFailureStrategy} to apply to the calling async operator (which could be
a local error mode defined in the {@link Context}) and apply it.
<p>
Returns a {@link RuntimeException} if errors are fatal for the error mode, in which
case the operator poll should throw the returned error. On the contrary if the
error mode allows the sequence to continue, returns {@code null} in which case
the operator should retry the {@link Queue#poll() poll()}.

@param value The onNext value that caused an error.
@param error The error.
@param context The most significant {@link Context} in which to look for an {@link OnNextFailureStrategy}.
@param <T> The type of the value causing the error.
@return a {@link Throwable} to propagate through onError if the strategy is
terminal and cancelled the subscription, null if not.
Find the { @link OnNextFailureStrategy } to apply to the calling async operator ( which could be a local error mode defined in the { @link Context } ) and apply it . <p > Returns a { @link RuntimeException } if errors are fatal for the error mode in which case the operator poll should throw the returned error . On the contrary if the error mode allows the sequence to continue returns { @code null } in which case the operator should retry the { @link Queue#poll () poll () } .