mirror of
https://github.com/denoland/deno.git
synced 2024-11-29 16:30:56 -05:00
48ede89f1f
This commit changes current "deno_core::resolve_url_or_path" API to "resolve_url_or_path_deprecated" and adds new "resolve_url_or_path" API that requires to explicitly pass the directory from which paths should be resolved to. Some of the call sites were updated to use the new API, the reminder of them will be updated in a follow up PR. Towards landing https://github.com/denoland/deno/pull/15454
161 lines
4.9 KiB
Rust
161 lines
4.9 KiB
Rust
// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
|
|
mod async_cancel;
|
|
mod async_cell;
|
|
mod bindings;
|
|
pub mod error;
|
|
mod error_codes;
|
|
mod extensions;
|
|
mod flags;
|
|
mod gotham_state;
|
|
mod inspector;
|
|
mod io;
|
|
mod module_specifier;
|
|
mod modules;
|
|
mod normalize_path;
|
|
mod ops;
|
|
mod ops_builtin;
|
|
mod ops_builtin_v8;
|
|
mod ops_metrics;
|
|
mod resources;
|
|
mod runtime;
|
|
pub mod snapshot_util;
|
|
mod source_map;
|
|
mod task_queue;
|
|
|
|
// Re-exports
|
|
pub use anyhow;
|
|
pub use futures;
|
|
pub use parking_lot;
|
|
pub use serde;
|
|
pub use serde_json;
|
|
pub use serde_v8;
|
|
pub use serde_v8::ByteString;
|
|
pub use serde_v8::DetachedBuffer;
|
|
pub use serde_v8::StringOrBuffer;
|
|
pub use serde_v8::U16String;
|
|
pub use serde_v8::ZeroCopyBuf;
|
|
pub use sourcemap;
|
|
pub use url;
|
|
pub use v8;
|
|
|
|
pub use deno_ops::op;
|
|
|
|
pub use crate::async_cancel::CancelFuture;
|
|
pub use crate::async_cancel::CancelHandle;
|
|
pub use crate::async_cancel::CancelTryFuture;
|
|
pub use crate::async_cancel::Cancelable;
|
|
pub use crate::async_cancel::Canceled;
|
|
pub use crate::async_cancel::TryCancelable;
|
|
pub use crate::async_cell::AsyncMut;
|
|
pub use crate::async_cell::AsyncMutFuture;
|
|
pub use crate::async_cell::AsyncRef;
|
|
pub use crate::async_cell::AsyncRefCell;
|
|
pub use crate::async_cell::AsyncRefFuture;
|
|
pub use crate::async_cell::RcLike;
|
|
pub use crate::async_cell::RcRef;
|
|
pub use crate::extensions::Extension;
|
|
pub use crate::extensions::ExtensionBuilder;
|
|
pub use crate::extensions::ExtensionFileSource;
|
|
pub use crate::extensions::ExtensionFileSourceCode;
|
|
pub use crate::extensions::OpDecl;
|
|
pub use crate::extensions::OpMiddlewareFn;
|
|
pub use crate::flags::v8_set_flags;
|
|
pub use crate::inspector::InspectorMsg;
|
|
pub use crate::inspector::InspectorMsgKind;
|
|
pub use crate::inspector::InspectorSessionProxy;
|
|
pub use crate::inspector::JsRuntimeInspector;
|
|
pub use crate::inspector::LocalInspectorSession;
|
|
pub use crate::io::BufMutView;
|
|
pub use crate::io::BufView;
|
|
pub use crate::io::WriteOutcome;
|
|
pub use crate::module_specifier::resolve_import;
|
|
pub use crate::module_specifier::resolve_path;
|
|
pub use crate::module_specifier::resolve_url;
|
|
pub use crate::module_specifier::resolve_url_or_path;
|
|
pub use crate::module_specifier::resolve_url_or_path_deprecated;
|
|
pub use crate::module_specifier::ModuleResolutionError;
|
|
pub use crate::module_specifier::ModuleSpecifier;
|
|
pub use crate::module_specifier::DUMMY_SPECIFIER;
|
|
pub use crate::modules::ExtModuleLoader;
|
|
pub use crate::modules::ExtModuleLoaderCb;
|
|
pub use crate::modules::FsModuleLoader;
|
|
pub use crate::modules::ModuleId;
|
|
pub use crate::modules::ModuleLoader;
|
|
pub use crate::modules::ModuleSource;
|
|
pub use crate::modules::ModuleSourceFuture;
|
|
pub use crate::modules::ModuleType;
|
|
pub use crate::modules::NoopModuleLoader;
|
|
pub use crate::modules::ResolutionKind;
|
|
pub use crate::normalize_path::normalize_path;
|
|
pub use crate::ops::Op;
|
|
pub use crate::ops::OpAsyncFuture;
|
|
pub use crate::ops::OpCall;
|
|
pub use crate::ops::OpError;
|
|
pub use crate::ops::OpFn;
|
|
pub use crate::ops::OpId;
|
|
pub use crate::ops::OpResult;
|
|
pub use crate::ops::OpState;
|
|
pub use crate::ops::PromiseId;
|
|
pub use crate::ops_builtin::op_close;
|
|
pub use crate::ops_builtin::op_print;
|
|
pub use crate::ops_builtin::op_resources;
|
|
pub use crate::ops_builtin::op_void_async;
|
|
pub use crate::ops_builtin::op_void_sync;
|
|
pub use crate::ops_metrics::OpsTracker;
|
|
pub use crate::resources::AsyncResult;
|
|
pub use crate::resources::Resource;
|
|
pub use crate::resources::ResourceId;
|
|
pub use crate::resources::ResourceTable;
|
|
pub use crate::runtime::CompiledWasmModuleStore;
|
|
pub use crate::runtime::CrossIsolateStore;
|
|
pub use crate::runtime::GetErrorClassFn;
|
|
pub use crate::runtime::JsErrorCreateFn;
|
|
pub use crate::runtime::JsRealm;
|
|
pub use crate::runtime::JsRuntime;
|
|
pub use crate::runtime::RuntimeOptions;
|
|
pub use crate::runtime::SharedArrayBufferStore;
|
|
pub use crate::runtime::Snapshot;
|
|
pub use crate::runtime::V8_WRAPPER_OBJECT_INDEX;
|
|
pub use crate::runtime::V8_WRAPPER_TYPE_INDEX;
|
|
pub use crate::source_map::SourceMapGetter;
|
|
pub use crate::task_queue::TaskQueue;
|
|
pub use crate::task_queue::TaskQueuePermit;
|
|
|
|
pub fn v8_version() -> &'static str {
|
|
v8::V8::get_version()
|
|
}
|
|
|
|
/// An internal module re-exporting functions used by the #[op] (`deno_ops`) macro
|
|
#[doc(hidden)]
|
|
pub mod _ops {
|
|
pub use super::bindings::throw_type_error;
|
|
pub use super::error_codes::get_error_code;
|
|
pub use super::ops::to_op_result;
|
|
pub use super::ops::OpCtx;
|
|
pub use super::ops::OpResult;
|
|
pub use super::runtime::queue_async_op;
|
|
pub use super::runtime::queue_fast_async_op;
|
|
pub use super::runtime::V8_WRAPPER_OBJECT_INDEX;
|
|
pub use super::runtime::V8_WRAPPER_TYPE_INDEX;
|
|
}
|
|
|
|
/// A helper macro that will return a call site in Rust code. Should be
|
|
/// used when executing internal one-line scripts for JsRuntime lifecycle.
|
|
///
|
|
/// Returns a string in form of: "`[ext:<filename>:<line>:<column>]`"
|
|
#[macro_export]
|
|
macro_rules! located_script_name {
|
|
() => {
|
|
format!("[ext:{}:{}:{}]", std::file!(), std::line!(), std::column!());
|
|
};
|
|
}
|
|
|
|
#[cfg(test)]
|
|
mod tests {
|
|
use super::*;
|
|
|
|
#[test]
|
|
fn test_v8_version() {
|
|
assert!(v8_version().len() > 3);
|
|
}
|
|
}
|