diff options
Diffstat (limited to 'ext/http/http_next.rs')
-rw-r--r-- | ext/http/http_next.rs | 25 |
1 files changed, 1 insertions, 24 deletions
diff --git a/ext/http/http_next.rs b/ext/http/http_next.rs index 99d602fcc..a6527397f 100644 --- a/ext/http/http_next.rs +++ b/ext/http/http_next.rs @@ -20,6 +20,7 @@ use crate::websocket_upgrade::WebSocketUpgrade; use crate::LocalExecutor; use cache_control::CacheControl; use deno_core::error::AnyError; +use deno_core::external; use deno_core::futures::future::poll_fn; use deno_core::futures::TryFutureExt; use deno_core::op2; @@ -130,30 +131,6 @@ impl< #[repr(transparent)] struct RcHttpRecord(Rc<HttpRecord>); -// Temp copy -/// Define an external type. -macro_rules! external { - ($type:ident, $name:literal) => { - impl deno_core::Externalizable for $type { - fn external_marker() -> usize { - // Use the address of a static mut as a way to get around lack of usize-sized TypeId. Because it is mutable, the - // compiler cannot collapse multiple definitions into one. - static mut DEFINITION: deno_core::ExternalDefinition = - deno_core::ExternalDefinition::new($name); - // Wash the pointer through black_box so the compiler cannot see what we're going to do with it and needs - // to assume it will be used for valid purposes. - // SAFETY: temporary while waiting on deno core bump - let ptr = std::hint::black_box(unsafe { &mut DEFINITION } as *mut _); - ptr as usize - } - - fn external_name() -> &'static str { - $name - } - } - }; -} - // Register the [`HttpRecord`] as an external. external!(RcHttpRecord, "http record"); |