1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-01 09:24:20 -04:00
denoland-deno/ext/url
Divy Srivastava 9b2b8df927
feat(ops): Fast zero copy string arguments (#16777)
Uses SeqOneByteString optimization to do zero-copy `&str` arguments in
fast calls.

- [x] Depends on https://github.com/denoland/rusty_v8/pull/1129
- [x] Depends on
https://chromium-review.googlesource.com/c/v8/v8/+/4036884
- [x] Disable in async ops
- [x] Make it work with owned `String` with an extra alloc in fast path.
- [x] Support `Cow<'_, str>`. Owned for slow case, Borrowed for fast
case

```rust
#[op]
fn op_string_len(s: &str) -> u32 { 
  str.len() as u32 
}
```
2022-12-02 05:29:15 +00:00
..
benches Revert "core: don't include_str extension js code (#10786)" (#14614) 2022-05-15 13:27:56 +02:00
00_url.js feat(ops): Fast zero copy string arguments (#16777) 2022-12-02 05:29:15 +00:00
01_urlpattern.js perf(ops): Monomorphic sync op calls (#15337) 2022-08-11 15:56:56 +02:00
Cargo.toml chore: forward v1.28.3 release commit to main (#16884) 2022-12-01 22:46:27 +09:00
internal.d.ts chore: update copyright year (#13434) 2022-01-20 16:10:16 +09:00
lib.deno_url.d.ts docs: add category tag for built-in APIs (#15480) 2022-08-17 13:12:24 +10:00
lib.rs feat(ops): Fast zero copy string arguments (#16777) 2022-12-02 05:29:15 +00:00
README.md feat: add URLPattern API (#11941) 2021-09-08 11:14:29 +02:00
urlpattern.rs feat(ops): optional OpState (#13954) 2022-03-16 00:33:46 +01:00

deno_url

This crate implements the URL, and URLPattern APIs for Deno.

URL Spec: https://url.spec.whatwg.org/ URLPattern Spec: https://wicg.github.io/urlpattern/