1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 10:38:11 +00:00

LibWeb: Add AO transform_stream_default_source_pull_algorithm()

This commit is contained in:
Kenneth Myhra 2023-07-08 07:03:37 +02:00 committed by Andreas Kling
parent 894f1e9d62
commit f91c150cfc
2 changed files with 16 additions and 0 deletions

View file

@ -2993,6 +2993,21 @@ WebIDL::ExceptionOr<JS::NonnullGCPtr<WebIDL::Promise>> transform_stream_default_
return transform_stream_default_controller_perform_transform(*controller, chunk);
}
WebIDL::ExceptionOr<JS::NonnullGCPtr<WebIDL::Promise>> transform_stream_default_source_pull_algorithm(TransformStream& stream)
{
// 1. Assert: stream.[[backpressure]] is true.
VERIFY(stream.backpressure().has_value() && *stream.backpressure());
// 2. Assert: stream.[[backpressureChangePromise]] is not undefined.
VERIFY(stream.backpressure_change_promise());
// 3. Perform ! TransformStreamSetBackpressure(stream, false).
TRY(transform_stream_set_backpressure(stream, false));
// 4. Return stream.[[backpressureChangePromise]].
return JS::NonnullGCPtr { *stream.backpressure_change_promise() };
}
// https://streams.spec.whatwg.org/#transform-stream-error
WebIDL::ExceptionOr<void> transform_stream_error(TransformStream& stream, JS::Value error)
{