Skip to main content

Source

Trait Source 

Source
pub trait Source:
    Asset
    + Send
    + Sync
    + NonLocalValue
    + ValueDebug {
    // Required methods
    fn ident(self: Vc<Self>) -> Vc<AssetIdent>
       where Self: Sized;
    fn description(self: Vc<Self>) -> Vc<RcStr>
       where Self: Sized;
}
Expand description

Unparsed input source code. Source code is processed into Modules by the AssetContext. All Sources have content and an identifier.

For documentation about where this is used and how it fits into the rest of Turbopack, see crate::_layers.

Required Methods§

Source

fn ident(self: Vc<Self>) -> Vc<AssetIdent>
where Self: Sized,

The identifier of the Source. It’s expected to be unique and capture all properties of the Source.

Source

fn description(self: Vc<Self>) -> Vc<RcStr>
where Self: Sized,

A human-readable description of this source, explaining where the code comes from. For sources that transform another source, this should include the inner source’s description, creating a readable chain like "loaders [sass-loader] transform of file content of ./styles.scss".

Trait Implementations§

Source§

impl TraitVtablePrototype for Box<dyn Source>

Source§

const LEN: usize = 2usize

Source§

const NAMES: &[&str]

Source§

const DEFAULTS: &[Option<&NativeFunction>]

Source§

impl VcValueTrait for Box<dyn Source>

Source§

type ValueTrait = dyn Source

Source§

fn get_trait_type_id() -> TraitTypeId

Returns the type id of the trait object.
Source§

fn get_impl_vtables() -> &'static VTableRegistry<Self::ValueTrait>

Returns the vtable for an implementation of this trait. Panics if ValueTypeId does not implement the trait.
Source§

impl Dynamic<Box<dyn Asset>> for Box<dyn Source>

Source§

impl Dynamic<Box<dyn Source>> for Box<dyn Source>

Source§

impl Dynamic<Box<dyn ValueDebug>> for Box<dyn Source>

Source§

impl Upcast<Box<dyn Asset>> for Box<dyn Source>

Source§

impl Upcast<Box<dyn Source>> for Box<dyn Source>

Source§

impl Upcast<Box<dyn ValueDebug>> for Box<dyn Source>

Source§

impl UpcastStrict<Box<dyn Asset>> for Box<dyn Source>

Source§

impl UpcastStrict<Box<dyn ValueDebug>> for Box<dyn Source>

Implementors§