Struct deno_core::Extension

source ·
pub struct Extension {
Show 13 fields pub name: &'static str, pub deps: &'static [&'static str], pub js_files: Cow<'static, [ExtensionFileSource]>, pub esm_files: Cow<'static, [ExtensionFileSource]>, pub lazy_loaded_esm_files: Cow<'static, [ExtensionFileSource]>, pub esm_entry_point: Option<&'static str>, pub ops: Cow<'static, [OpDecl]>, pub external_references: Cow<'static, [ExternalReference<'static>]>, pub global_template_middleware: Option<for<'s> fn(_: &mut HandleScope<'s, ()>, _: Local<'s, ObjectTemplate>) -> Local<'s, ObjectTemplate>>, pub global_object_middleware: Option<for<'s> fn(_: &mut HandleScope<'s>, _: Local<'s, Object>)>, pub op_state_fn: Option<Box<dyn FnOnce(&mut OpState)>>, pub middleware_fn: Option<Box<OpMiddlewareFn>>, pub enabled: bool,
}

Fields§

§name: &'static str§deps: &'static [&'static str]§js_files: Cow<'static, [ExtensionFileSource]>§esm_files: Cow<'static, [ExtensionFileSource]>§lazy_loaded_esm_files: Cow<'static, [ExtensionFileSource]>§esm_entry_point: Option<&'static str>§ops: Cow<'static, [OpDecl]>§external_references: Cow<'static, [ExternalReference<'static>]>§global_template_middleware: Option<for<'s> fn(_: &mut HandleScope<'s, ()>, _: Local<'s, ObjectTemplate>) -> Local<'s, ObjectTemplate>>§global_object_middleware: Option<for<'s> fn(_: &mut HandleScope<'s>, _: Local<'s, Object>)>§op_state_fn: Option<Box<dyn FnOnce(&mut OpState)>>§middleware_fn: Option<Box<OpMiddlewareFn>>§enabled: bool

Implementations§

source§

impl Extension

source

pub fn builder(name: &'static str) -> ExtensionBuilder

👎Deprecated: Use Extension { …, ..Default::default() }
source

pub fn builder_with_deps( name: &'static str, deps: &'static [&'static str] ) -> ExtensionBuilder

👎Deprecated: Use Extension { …, ..Default::default() }
source

pub fn check_dependencies(&self, previous_exts: &[Extension])

Check if dependencies have been loaded, and errors if either:

  • The extension is depending on itself or an extension with the same name.
  • A dependency hasn’t been loaded yet.
source

pub fn get_js_sources(&self) -> &[ExtensionFileSource]

returns JS source code to be loaded into the isolate (either at snapshotting, or at startup). as a vector of a tuple of the file name, and the source code.

source

pub fn get_esm_sources(&self) -> &[ExtensionFileSource]

source

pub fn get_lazy_loaded_esm_sources(&self) -> &[ExtensionFileSource]

source

pub fn get_esm_entry_point(&self) -> Option<&'static str>

source

pub fn init_ops(&mut self) -> &[OpDecl]

Called at JsRuntime startup to initialize ops in the isolate.

source

pub fn take_state(&mut self, state: &mut OpState)

Allows setting up the initial op-state of an isolate at startup.

source

pub fn take_middleware(&mut self) -> Option<Box<OpMiddlewareFn>>

Middleware should be called before init_ops

source

pub fn get_global_template_middleware( &mut self ) -> Option<for<'s> fn(_: &mut HandleScope<'s, ()>, _: Local<'s, ObjectTemplate>) -> Local<'s, ObjectTemplate>>

source

pub fn get_global_object_middleware( &mut self ) -> Option<for<'s> fn(_: &mut HandleScope<'s>, _: Local<'s, Object>)>

source

pub fn get_external_references(&mut self) -> &[ExternalReference<'static>]

source

pub fn enabled(self, enabled: bool) -> Self

source

pub fn disable(self) -> Self

Trait Implementations§

source§

impl Default for Extension

source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.