Kenneth Myhra
0ec0e92b10
LibWeb: Implement static method ReadableStream.from(asyncIterable)
2024-06-09 10:12:46 +02:00
Timothy Flynn
88d46b51ed
LibWeb: Implement operation to error a ReadableStream
2024-05-26 18:29:24 +02:00
Kenneth Myhra
f3ecdb22d5
LibWeb: Implement ReadableStream::close()
2024-05-20 16:57:52 -04:00
Timothy Flynn
2d4d16ac37
LibWeb: Remove exceptional return types from infallible stream IDL
2024-04-30 08:14:12 +02:00
Shannon Booth
80658743d3
LibWeb: Generate Optional<NonnullGCPtr<T>> as GCPtr<T>
...
This is the general pattern which has been adopted in LibWeb, so let's
generate our IDL like this too.
2024-04-07 18:01:05 +02:00
Kenneth Myhra
d593436b6d
LibWeb: Implement ReadableStream.pipeThrough()
2024-04-07 14:26:34 +01:00
Kenneth Myhra
d3b2cd8ab6
LibWeb: Implement ReadableStream.pipeTo()
2024-04-07 07:01:52 +02:00
Timothy Flynn
d8413774df
LibWeb: Expose the ReadableStream tee
IDL interface
...
This just sets up the plumbing to the underlying ReadableStreamTee AO,
which as of this commit, will just throw a NotImplemented exception.
2024-01-29 07:21:59 +01:00
Andreas Kling
bfd354492e
LibWeb: Put most LibWeb GC objects in type-specific heap blocks
...
With this change, we now have ~1200 CellAllocators across both LibJS and
LibWeb in a normal WebContent instance.
This gives us a minimum heap size of 4.7 MiB in the scenario where we
only have one cell allocated per type. Of course, in practice there will
be many more of each type, so the effective overhead is quite a bit
smaller than that in practice.
I left a few types unconverted to this mechanism because I got tired of
doing this. :^)
2023-11-19 22:00:48 +01:00
Andreas Kling
18c54d8d40
LibJS: Make Cell::initialize() return void
...
Stop worrying about tiny OOMs.
Work towards #20405
2023-08-08 07:39:11 +02:00
Shannon Booth
0f040456a7
LibWeb: Add ReadableStreamGetReaderOptions to ReadableStream.getReader
...
Co-Authored-By: Matthew Olsson <mattco@serenityos.org>
2023-07-05 23:33:20 +01:00
Shannon Booth
4f217947b3
LibWeb: Implement QueuingStrategy for Web::Streams::ReadableStream
2023-06-23 13:27:29 +02:00
Shannon Booth
e1d71454eb
LibWeb: Correct parameter name in Web::Streams::ReadableStream::cancel
...
This aligns with the name given in the implementation file and is a
better description of what is being passed in.
2023-06-22 06:58:23 +02:00
Shannon Booth
314eeeb9b2
LibWeb: Const qualify Web::Streams::ReadableStream::locked
2023-06-22 06:58:23 +02:00
Matthew Olsson
b57b3c54cc
LibWeb: Add ReadableStreamBYOBReader to ReadableStreamReader type
2023-04-27 07:57:53 +02:00
Matthew Olsson
f9d6a161e8
LibWeb: Add ByteStreamController to ReadableStreamController type
2023-04-14 13:03:34 +02:00
Matthew Olsson
8274906301
LibWeb: Expose ReadableStream::m_state and use in AOs
...
This allows us to be a bit closer to the spec phrasing and matches
what we do with WritableStream
2023-04-14 13:03:34 +02:00
Matthew Olsson
36ca1386e8
LibWeb: Add ReadableStream.locked/cancel()/getReader()
2023-04-01 23:43:07 +01:00
Matthew Olsson
d8710aa604
LibWeb: Implement ReadableStream's constructor
2023-04-01 23:43:07 +01:00
Matthew Olsson
bc9919178e
LibWeb: Add ReadableStreamDefaultController
2023-04-01 23:43:07 +01:00
Matthew Olsson
222e3c32cd
LibWeb: Add ReadableStreamDefaultReader
2023-04-01 23:43:07 +01:00
Matthew Olsson
fe69d66a4e
LibWeb: Add the ReadableStreamGenericReader mixin interface
2023-04-01 23:43:07 +01:00
Timothy Flynn
2692db8699
LibJS+Everywhere: Allow Cell::initialize overrides to throw OOM errors
...
Note that as of this commit, there aren't any such throwers, and the
call site in Heap::allocate will drop exceptions on the floor. This
commit only serves to change the declaration of the overrides, make sure
they return an empty value, and to propagate OOM errors frm their base
initialize invocations.
2023-01-29 00:02:45 +00:00
Timothy Flynn
834202aeb9
LibWeb: Move setting of Web object prototypes to initialize()
...
This needs to happen before prototype/constructor intitialization can be
made lazy. Otherwise, GC could run during the C++ constructor and try to
collect the object currently being created.
2023-01-10 16:08:14 +01:00
Linus Groh
0db55693a9
LibWeb: Fix ReadableStream's WEB_PLATFORM_OBJECT() class name
2022-10-04 20:05:09 +01:00
Andrew Kaster
4bb6345b2f
LibWeb: Remove unecessary dependence on Window from assorted classes
...
These classes only needed Window to get at its realm. Pass a realm
directly to construct Crypto, Encoding, HRT, IntersectionObserver,
NavigationTiming, Page, RequestIdleCallback, Selection, Streams, URL,
and XML classes.
2022-10-01 21:05:32 +01:00
Linus Groh
ad04d7ac9b
LibWeb: Move ExceptionOr from DOM/ to WebIDL/
...
This is a concept fully defined in the Web IDL spec and doesn't belong
in the DOM directory/namespace - not even DOMException, despite the name
:^)
2022-09-25 19:13:31 +01:00
Linus Groh
87654f5b51
LibWeb: Start fleshing out the ReadableStream interface
...
This is so we can just assume it exists in Fetch APIs (while still
skipping functionality that relies on a full implementation, of
course).
2022-09-22 21:01:13 +01:00