minghuaw
554b2da1ad
Script: Implement TextDecoderStream ( #38112 )
...
This PR implements the `TextDecoderStream`. Other than introducing the
necessary mod and webidl files corresponding to `TextDecoderStream`,
this PR also involves some changes in `TextDecoder` and
`TrasnformStream`:
- The common part that can be shared between `TextDecoder` and
`TextDecoderStream` are extracted into a separate type
`script::dom::textdecodercommon::TextDecoderCommon`. This type could
probably use a different name because there is an interface called
`TextDecoderCommon` in the spec
(https://encoding.spec.whatwg.org/#textdecodercommon ) which just gets
included in `TextDecoder` and `TextDecoderStream`.
- The three algorithms in `TransformStream` (`cancel`, `flush`, and
`transform`) all have become `enum` that has a `Js` variant for a JS
function object and a `Native` variant for a rust trait object. Whether
the cancel algorithm needs this enum type is debatable as I did not find
any interface in the spec that explicitly sets the cancel algorithm.
Testing: Existing WPT tests `tests/wpt/tests/encoding/stream` should be
sufficient
Fixes : #37723
---------
Signed-off-by: minghuaw <michael.wu1107@gmail.com >
Signed-off-by: minghuaw <wuminghua7@huawei.com >
Signed-off-by: Minghua Wu <michael.wu1107@gmail.com >
2025-07-29 04:18:15 +00:00
..
2025-06-02 13:20:57 +00:00
2025-05-27 09:53:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-02-27 19:25:27 +00:00
2025-02-18 04:13:43 +00:00
2025-02-18 04:13:43 +00:00
2025-02-18 04:13:43 +00:00
2025-02-18 04:13:43 +00:00
2025-02-18 04:13:43 +00:00
2025-02-18 04:13:43 +00:00
2025-02-18 04:13:43 +00:00
2025-02-18 04:13:43 +00:00
2025-02-18 04:13:43 +00:00
2025-02-18 04:13:43 +00:00
2025-02-02 07:49:48 +00:00
2025-01-24 20:47:43 +00:00
2025-06-26 14:38:30 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-05-07 15:11:37 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-07-07 10:43:30 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-02-05 12:41:36 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-04-01 11:20:46 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-04-01 19:18:07 +00:00
2025-07-25 03:05:22 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-05-10 15:54:13 +00:00
2025-01-24 20:47:43 +00:00
2025-07-23 08:16:01 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-06-09 10:17:28 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-03-12 00:09:32 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-05-10 15:54:13 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-03-10 09:44:16 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-02-19 05:50:01 +00:00
2025-02-19 05:50:01 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-07-29 04:18:15 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-02-16 09:54:31 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-07-15 08:03:49 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-05-10 15:54:13 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-06-03 11:22:44 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-05-13 21:07:13 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-05-29 11:26:27 +00:00
2025-01-24 20:47:43 +00:00
2025-04-16 05:52:19 +00:00
2025-01-24 20:47:43 +00:00
2025-02-17 07:07:24 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-03-14 20:33:07 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-03-10 09:25:34 +00:00
2025-01-24 20:47:43 +00:00
2025-03-19 07:57:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-06-07 07:00:02 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-04-11 06:32:34 +00:00
2025-01-24 20:47:43 +00:00
2025-01-25 04:34:58 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-03-17 09:41:34 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-06-19 05:19:07 +00:00
2025-07-25 05:29:10 +00:00
2025-07-26 02:59:15 +00:00
2025-06-19 05:19:07 +00:00
2025-06-19 05:19:07 +00:00
2025-06-19 05:19:07 +00:00
2025-06-19 05:19:07 +00:00
2025-06-20 07:42:36 +00:00
2025-01-24 20:47:43 +00:00
2025-07-14 10:20:02 +00:00
2025-07-15 08:03:49 +00:00
2025-01-24 20:47:43 +00:00
2025-02-13 07:47:29 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-04-30 10:49:38 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-04-19 01:34:13 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-02-18 16:56:57 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-07-15 08:03:49 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-04-13 01:41:39 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-03-19 08:33:11 +00:00
2025-01-24 20:47:43 +00:00
2025-06-13 09:52:38 +00:00
2025-01-27 15:52:54 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-07-07 10:43:30 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-04-25 08:49:21 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-03-29 08:11:27 +00:00
2025-01-24 20:47:43 +00:00
2025-05-01 15:19:41 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-05-25 17:36:16 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-05-13 10:43:10 +00:00
2025-01-24 20:47:43 +00:00
2025-05-13 10:43:10 +00:00
2025-01-24 20:47:43 +00:00
2025-05-23 16:16:22 +00:00
2025-05-17 08:14:19 +00:00
2025-05-17 08:14:19 +00:00
2025-05-17 08:14:19 +00:00
2025-05-17 08:14:19 +00:00
2025-05-17 08:14:19 +00:00
2025-05-17 08:14:19 +00:00
2025-05-17 08:14:19 +00:00
2025-02-18 04:13:43 +00:00
2025-05-17 08:14:19 +00:00
2025-05-17 08:14:19 +00:00
2025-05-17 08:14:19 +00:00
2025-01-24 20:47:43 +00:00
2025-07-29 04:18:15 +00:00
2025-07-09 12:42:36 +00:00
2025-07-29 04:18:15 +00:00
2025-07-09 12:42:36 +00:00
2025-07-09 12:42:36 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-05-08 08:45:57 +00:00
2025-05-08 08:45:57 +00:00
2025-05-08 08:45:57 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-04-05 13:08:56 +00:00
2025-04-05 13:08:56 +00:00
2025-04-05 13:08:56 +00:00
2025-04-13 03:55:23 +00:00
2025-04-05 13:08:56 +00:00
2025-01-24 20:47:43 +00:00
2025-02-19 13:02:14 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-05-24 13:20:45 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-07-09 14:22:03 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-06-09 14:28:30 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-05-07 07:22:29 +00:00
2025-07-14 10:20:02 +00:00
2025-01-24 20:47:43 +00:00
2025-05-04 17:05:07 +00:00
2025-05-04 17:05:07 +00:00
2025-01-24 20:47:43 +00:00
2025-04-19 01:34:13 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-02-19 13:02:14 +00:00
2025-06-18 15:26:05 +00:00
2025-02-19 13:02:14 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00
2025-01-24 20:47:43 +00:00