Skip to main content

Allocator

Struct Allocator 

Source
pub struct Allocator<'ctx, Ctx: 'ctx = ()> { /* private fields */ }
Expand description

A custom allocator that libghostty uses for its memory allocations.

The allocator may depend on some external state Ctx for the duration of lifetime 'ctx. This is useful for adapting external, stateful allocators that may not have a 'static lifetime.

One example of a custom allocator that does have a 'static lifetime is Rust’s own default allocator, which can also be used within libghostty as Allocator::GLOBAL.

Implementations§

Source§

impl Allocator<'static>

Source

pub const GLOBAL: Self

A custom allocator based on Rust’s built-in global allocator.

Trait Implementations§

Source§

impl<'ctx, Ctx: Debug + 'ctx> Debug for Allocator<'ctx, Ctx>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'ctx, Ctx> Freeze for Allocator<'ctx, Ctx>

§

impl<'ctx, Ctx> RefUnwindSafe for Allocator<'ctx, Ctx>
where Ctx: RefUnwindSafe,

§

impl<'ctx, Ctx = ()> !Send for Allocator<'ctx, Ctx>

§

impl<'ctx, Ctx = ()> !Sync for Allocator<'ctx, Ctx>

§

impl<'ctx, Ctx> Unpin for Allocator<'ctx, Ctx>

§

impl<'ctx, Ctx> UnsafeUnpin for Allocator<'ctx, Ctx>

§

impl<'ctx, Ctx> UnwindSafe for Allocator<'ctx, Ctx>
where Ctx: RefUnwindSafe,

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>,

Source§

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>,

Source§

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.