Struct zng_ext_hot_reload::HOT_RELOAD
source · pub struct HOT_RELOAD;
Expand description
Hot reload service.
Implementations§
source§impl HOT_RELOAD
impl HOT_RELOAD
sourcepub fn status(&self) -> ReadOnlyArcVar<Vec<HotStatus>>
pub fn status(&self) -> ReadOnlyArcVar<Vec<HotStatus>>
Hot reload status, libs that are rebuilding, errors.
sourcepub fn rebuilder(
&self,
rebuilder: impl FnMut(BuildArgs) -> Option<ResponseVar<Result<PathBuf, BuildError>>> + Send + 'static,
)
pub fn rebuilder( &self, rebuilder: impl FnMut(BuildArgs) -> Option<ResponseVar<Result<PathBuf, BuildError>>> + Send + 'static, )
Register a handler that can override the hot library rebuild.
The command should rebuild using the same features used to run the program (not just rebuild the dylib).
By default it is just cargo build
, that works if the program was started using only cargo run
, but
an example program needs a custom runner.
If rebuilder
wants to handle the rebuild it must return a response var that updates when the rebuild is finished with
the path to the rebuilt dylib. The BuildArgs
also provides helper methods to rebuild common workspace setups.
Note that unlike most services the rebuilder
is registered immediately, not after an update cycle.
Auto Trait Implementations§
impl Freeze for HOT_RELOAD
impl RefUnwindSafe for HOT_RELOAD
impl Send for HOT_RELOAD
impl Sync for HOT_RELOAD
impl Unpin for HOT_RELOAD
impl UnwindSafe for HOT_RELOAD
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more