Skip to main content

Internable

Trait Internable 

Source
pub trait Internable: MallocSizeOf {
    type Key: Eq + Hash + Clone + Debug + MallocSizeOf + InternDebug + InternSerialize + for<'a> InternDeserialize<'a>;
    type StoreData: From<Self::Key> + MallocSizeOf + InternSerialize + for<'a> InternDeserialize<'a>;
    type InternData: MallocSizeOf + InternSerialize + for<'a> InternDeserialize<'a>;

    const PROFILE_COUNTER: usize;
}
Expand description

Implement Internable for a type that wants to participate in interning.

Required Associated Constants§

Required Associated Types§

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl Internable for PrimitiveKeyKind

Source§

const PROFILE_COUNTER: usize = crate::profiler::INTERNED_PRIMITIVES

Source§

type Key = PrimitiveKey

Source§

type StoreData = PrimitiveTemplate

Source§

type InternData = ()

Implementors§

Source§

impl Internable for ClipIntern

Source§

impl Internable for PolygonIntern

Source§

impl Internable for FilterDataIntern

Source§

impl Internable for BoxShadow

Source§

impl Internable for BackdropCapture

Source§

impl Internable for BackdropRender

Source§

impl Internable for ImageBorder

Source§

impl Internable for NormalBorderPrim

Source§

impl Internable for ConicGradient

Source§

const PROFILE_COUNTER: usize = crate::profiler::INTERNED_CONIC_GRADIENTS

Source§

type Key = ConicGradientKey

Source§

type StoreData = ConicGradientTemplate

Source§

type InternData = ()

Source§

impl Internable for LinearGradient

Source§

const PROFILE_COUNTER: usize = crate::profiler::INTERNED_LINEAR_GRADIENTS

Source§

type Key = LinearGradientKey

Source§

type StoreData = LinearGradientTemplate

Source§

type InternData = ()

Source§

impl Internable for RadialGradient

Source§

const PROFILE_COUNTER: usize = crate::profiler::INTERNED_RADIAL_GRADIENTS

Source§

type Key = RadialGradientKey

Source§

type StoreData = RadialGradientTemplate

Source§

type InternData = ()

Source§

impl Internable for Image

Source§

impl Internable for YuvImage

Source§

impl Internable for LineDecoration

Source§

impl Internable for Picture

Source§

const PROFILE_COUNTER: usize = crate::profiler::INTERNED_PICTURES

Source§

type Key = PictureKey

Source§

type StoreData = PictureTemplate

Source§

type InternData = ()

Source§

impl Internable for TextRun

Source§

const PROFILE_COUNTER: usize = crate::profiler::INTERNED_TEXT_RUNS

Source§

type Key = TextRunKey

Source§

type StoreData = TextRunTemplate

Source§

type InternData = ()