Matthew Olsson
48b67e41f0
LibWeb: Accept a JS::Value for size in enqueue_value instead of a double
...
This matches what the spec does, and consolidates all of the size-
related errors in one spot instead of distributing them throughout the
various uses of enqueue_value_with_size()
2023-04-10 00:45:03 +02:00
Matthew Olsson
1f7f63ae5a
LibWeb: Move Streams/QueueOperations.h to Streams/AbstractOperations.h
...
This made more sense in the beginning, but now AbstractOperations.h is
so large that there isn't much benefit. This will resolve some ugly
include order issues in the coming commits.
2023-04-10 00:45:03 +02:00
Matthew Olsson
6bbd920008
LibWeb: Implement WritableStreamDefaultWriter.releaseLock()
2023-04-09 21:45:39 +02:00
Matthew Olsson
5f4da20a56
LibWeb: Implement WritableStreamDefaultWriter.close()
2023-04-09 21:45:39 +02:00
Matthew Olsson
0c441fa7af
LibWeb: Implement WritableStreamDefaultWriter.abort()
2023-04-09 21:45:39 +02:00
Matthew Olsson
c421b6113c
LibWeb: Implement WritableStream.abort()
2023-04-09 21:45:39 +02:00
Matthew Olsson
ae2d67c28b
LibWeb: Implement WritableStream.getWriter()
2023-04-09 21:45:39 +02:00
Matthew Olsson
f358ae1b13
LibWeb: Remove duplicate declaration in Streams/AbstractOperations.h
2023-04-09 21:45:39 +02:00
Matthew Olsson
5faa0014f2
LibWeb: Implement WritableStream.close()
2023-04-09 18:37:34 +02:00
Matthew Olsson
868cd95069
LibWeb: Add the WritableStreamDefaultController
2023-04-09 17:14:48 +02:00
Matthew Olsson
bdab61ad93
LibWeb: Add the WritableStreamDefaultWriter interface
2023-04-06 22:54:58 +02:00
Matthew Olsson
e93560b769
LibWeb: Add the WritableStream interface
2023-04-06 22:54:58 +02:00
Matthew Olsson
78feba401d
LibWeb: Move property_to_callback to Streams/AbstractOperations
...
This will be necessary for UnderlyingSink, which is WritableStream's
equivalent of UnderlyingSource, and functions in much the same way.
2023-04-06 22:54:58 +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
66dec1bf54
LibWeb: Add UnderlyingSource struct for ReadableStream 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
7ff657ef57
LibWeb: Add the stream queue-related abstract operations
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
Kenneth Myhra
d69e863286
LibWeb: Propagate error in factory method of Streams::ReadableStream
2023-02-22 09:55:33 +01:00
Timothy Flynn
b75b7f0c0d
LibJS+Everywhere: Propagate Cell::initialize errors from Heap::allocate
...
Callers that are already in a fallible context will now TRY to allocate
cells. Callers in infallible contexts get a FIXME.
2023-01-29 00:02:45 +00: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
22089436ed
LibJS: Convert Heap::allocate{,_without_realm}() to NonnullGCPtr
2022-12-15 06:56:37 -05:00
Andrew Kaster
67ceba2e6a
LibWeb: Add Exposed attribute and IDL spec links where missing
...
The intent is to use these to autogenerate prototype declarations for
Window and WorkerGlobalScope classes.
And the spec links are just nice to have :^)
2022-10-09 10:14:57 +02: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