pub struct Props {Show 39 fields
pub style: Option<Style>,
pub hover_style: Option<Style>,
pub press_style: Option<Style>,
pub focus_style: Option<Style>,
pub on_click: bool,
pub on_pointer_down: bool,
pub on_pointer_move: bool,
pub on_pointer_up: bool,
pub on_pointer_enter: bool,
pub on_pointer_leave: bool,
pub scroll_top: Option<f32>,
pub scroll_left: Option<f32>,
pub scroll_step: Option<f32>,
pub on_scroll: bool,
pub on_wheel: bool,
pub animated: Option<AnimatedBindings>,
pub anchor: Option<Anchor>,
pub src: Option<String>,
pub tint: Option<String>,
pub flip_x: bool,
pub flip_y: bool,
pub image_mode: Option<ImageMode>,
pub source_rect: Option<SourceRect>,
pub atlas: Option<AtlasSpec>,
pub visual_box: Option<String>,
pub draw: Option<Vec<DrawCmd>>,
pub on_resize: bool,
pub target: Option<String>,
pub value: Option<String>,
pub max_length: Option<usize>,
pub multiline: bool,
pub on_change: bool,
pub autofocus: bool,
pub selection_start: Option<usize>,
pub selection_end: Option<usize>,
pub aria_label: Option<String>,
pub on_select: bool,
pub on_focus: bool,
pub on_blur: bool,
}Expand description
Props for a host element. Event handlers never cross the boundary — the
reconciler replaces them with booleans (e.g. onClick: true) and keeps the
actual function in a JS-side map. Visual styling lives entirely in Style;
the fields here are content/attribute level.
Fields§
§style: Option<Style>CSS-like layout + visual style, mapped onto bevy_ui components.
hover_style: Option<Style>Style overlaid on style while the element is hovered. Decoded exactly
like style; applied on the Bevy side from the node’s Interaction.
press_style: Option<Style>Style overlaid on style (and hover_style) while the element is pressed.
focus_style: Option<Style>Style overlaid on style while the element is focused (currently
editableText). Applied on the Bevy side from the node’s focus state, so
focus styling needs no React round-trip.
on_click: boolWhether this element has an onClick handler registered in JS.
on_pointer_down: boolWhether this element has an onPointerDown handler registered in JS.
on_pointer_move: boolWhether this element has an onPointerMove handler registered in JS.
Fires each frame while the pointer is held down (a drag).
on_pointer_up: boolWhether this element has an onPointerUp handler registered in JS.
on_pointer_enter: boolWhether this element has an onPointerEnter handler registered in JS.
Fires once when the pointer enters the element (hover begins).
on_pointer_leave: boolWhether this element has an onPointerLeave handler registered in JS.
Fires once when the pointer leaves the element (hover ends).
scroll_top: Option<f32>Controlled vertical scroll offset (logical px) → ScrollPosition.y. On
update it’s pushed into the node only when it diverges from the live offset
(so a re-render echoing the user’s own wheel scroll is a no-op — see
[crate::reconcile]). Each axis is independent; absent leaves it alone.
scroll_left: Option<f32>Controlled horizontal scroll offset (logical px) → ScrollPosition.x.
scroll_step: Option<f32>Logical pixels scrolled per mouse-wheel “line” for this container, overriding
the default. Maps to [crate::bridge::ScrollStep]; only scales Line-unit
wheels (trackpad Pixel deltas are used raw).
on_scroll: boolWhether this element has an onScroll handler registered in JS. Present →
the reconciler stamps a [crate::bridge::ScrollListener] so the read-back
system reports offset changes (kept cheap by scoping its Changed query to
that marker, since ScrollPosition is a required component of every Node).
on_wheel: boolWhether this element has an onWheel handler registered in JS. Present →
the reconciler stamps a [crate::bridge::WheelListener] so
[crate::scroll::collect_wheel_events] reports raw wheel deltas over the
node (any node, unlike onScroll, which needs overflow: scroll).
animated: Option<AnimatedBindings>Per-property animation bindings for an Animated.node (Reanimated-style).
Present → the main reconciler stamps a crate::animations::AnimatedNode
on the entity so the animations plugin drives the listed props each frame.
Bevy-free, pure-serde, like the rest of the protocol.
anchor: Option<Anchor>World-anchor binding for an Anchored.node: the Bevy entity to follow and
an optional offset. Present → the reconciler stamps a crate::anchor::Anchored
so the per-frame positioning system tracks it. Pure-serde, Bevy-free.
src: Option<String>Asset path for an image, resolved by Bevy’s AssetServer (relative to
the app’s assets/ folder). Absent → a solid-color image (see tint).
tint: Option<String>Tint multiplied with the image (hex); also the fill of a src-less image.
flip_x: boolFlip the image along its x-axis.
flip_y: boolFlip the image along its y-axis.
image_mode: Option<ImageMode>How the image fits its box: the keyword "auto"/"stretch", or a
type-tagged object for 9-slice ("sliced") / "tiled" scaling.
source_rect: Option<SourceRect>Source sub-rect of the texture to display, in source-texture pixels.
Maps to ImageNode.rect. With atlas, it offsets from the atlas cell’s
top-left corner.
atlas: Option<AtlasSpec>Treat src as a uniform sprite-sheet grid and select one cell. Maps to
ImageNode.texture_atlas (builds/caches a TextureAtlasLayout).
visual_box: Option<String>Which box of the node the image fills: "content" | "padding"
(default) | "border". Maps to ImageNode.visual_box.
draw: Option<Vec<DrawCmd>>The declarative display list for a canvas element: an ordered batch of
vector draw commands (the recorded form of an HTML-canvas-like
ctx.moveTo/lineTo/… session). Present → the retained surface is
cleared and the list replayed (raster state reset first).
Some(vec![]) clears the canvas; absent leaves the retained pixels.
Imperative (accumulating) drawing rides Op::Draw instead.
on_resize: boolWhether this element has an onResize handler registered in JS. Cached
only so the delta stays truthful — "resize" events are not gated
on it (the JS runtime consumes them unconditionally, to replay a
declarative painter and keep the canvas handle’s size fresh).
target: Option<String>The render-target name a portal element displays. The reconciler stamps
a crate::portal::RPortal carrying it; the binding system points the
node’s ImageNode at the texture the app registered under this name (or a
transparent placeholder until it appears). Pure-serde, Bevy-free.
value: Option<String>The controlled text value of an editableText. Seeds the field on create;
on update it’s pushed into the widget only when it diverges from the live
buffer (so normal typing is never clobbered — see [crate::reconcile]).
max_length: Option<usize>Maximum number of characters an editableText accepts.
multiline: boolWhether an editableText accepts newlines (multi-line input).
on_change: boolWhether this element has an onChange handler registered in JS.
autofocus: boolFocus an editableText when it mounts (inserts AutoFocus).
selection_start: Option<usize>Controlled selection anchor, a UTF-8 byte offset into the value.
When selection_start/selection_end diverge from the live selection
they’re pushed into the widget (see [crate::reconcile]).
selection_end: Option<usize>Controlled selection focus, a UTF-8 byte offset into the value.
aria_label: Option<String>Accessible name announced to assistive tech (sets the a11y node’s label).
on_select: boolWhether this element has an onSelect handler registered in JS.
on_focus: boolWhether this element has an onFocus handler registered in JS.
on_blur: boolWhether this element has an onBlur handler registered in JS.
Implementations§
Source§impl Props
impl Props
Sourcepub fn split_events(self) -> (Props, UpdateEvents)
pub fn split_events(self) -> (Props, UpdateEvents)
Split the event-like fields (see UpdateEvents) out of self,
leaving the retained state. Used to seed the per-node props cache from
a create.
Sourcepub fn merge_delta(
&mut self,
delta: Props,
unset: &[String],
style_unset: &[String],
) -> (PropsDirty, UpdateEvents)
pub fn merge_delta( &mut self, delta: Props, unset: &[String], style_unset: &[String], ) -> (PropsDirty, UpdateEvents)
Merge an Op::Update delta (props + unset + style_unset) into
self (the retained last-applied props), returning what the delta
touched and the event-like fields to act on. See the semantics on
Op::Update.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Props
impl<'de> Deserialize<'de> for Props
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for Props
impl RefUnwindSafe for Props
impl Send for Props
impl Sync for Props
impl Unpin for Props
impl UnsafeUnpin for Props
impl UnwindSafe for Props
Blanket Implementations§
Source§impl<T, U> AsBindGroupShaderType<U> for T
impl<T, U> AsBindGroupShaderType<U> for T
Source§fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
T ShaderType for self. When used in AsBindGroup
derives, it is safe to assume that all images in self exist.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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> ConditionalSend for Twhere
T: Send,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self to use its Binary implementation when Debug-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self to use its Display implementation when
Debug-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self to use its Octal implementation when Debug-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> FromTemplate for T
impl<T> FromTemplate for T
Source§impl<T> FromWorld for Twhere
T: Default,
impl<T> FromWorld for Twhere
T: Default,
Source§fn from_world(_world: &mut World) -> T
fn from_world(_world: &mut World) -> T
Creates Self using default().
Source§impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T> HitDataExtra for T
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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>
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>
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 moreSource§impl<T> IntoResult<T> for T
impl<T> IntoResult<T> for T
Source§fn into_result(self) -> Result<T, RunSystemError>
fn into_result(self) -> Result<T, RunSystemError>
Source§impl<T> OverflowingAs for T
impl<T> OverflowingAs for T
Source§fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
Source§impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
Source§fn overflowing_cast_from(src: Src) -> (Dst, bool)
fn overflowing_cast_from(src: Src) -> (Dst, bool)
Source§impl<G> PatchFromTemplate for Gwhere
G: FromTemplate,
impl<G> PatchFromTemplate for Gwhere
G: FromTemplate,
Source§fn patch<F>(func: F) -> TemplatePatch<F, <G as PatchFromTemplate>::Template>
fn patch<F>(func: F) -> TemplatePatch<F, <G as PatchFromTemplate>::Template>
func, and turns it into a TemplatePatch.Source§impl<T> PatchTemplate for Twhere
T: Template,
impl<T> PatchTemplate for Twhere
T: Template,
Source§fn patch_template<F>(func: F) -> TemplatePatch<F, T>
fn patch_template<F>(func: F) -> TemplatePatch<F, T>
Source§impl<T> PathsInErrorsExt for Twhere
T: ?Sized,
impl<T> PathsInErrorsExt for Twhere
T: ?Sized,
Source§fn with_paths_in_errors(&self) -> SysWithPathsInErrors<'_, Self>
fn with_paths_in_errors(&self) -> SysWithPathsInErrors<'_, Self>
self in a SysWithPathsInErrors that includes paths in error messages.Source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> SaturatingAs for T
impl<T> SaturatingAs for T
Source§fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
Source§impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
Source§fn saturating_cast_from(src: Src) -> Dst
fn saturating_cast_from(src: Src) -> Dst
impl<T> Settings for T
Source§impl<T> StrictAs for T
impl<T> StrictAs for T
Source§fn strict_as<Dst>(self) -> Dstwhere
T: StrictCast<Dst>,
fn strict_as<Dst>(self) -> Dstwhere
T: StrictCast<Dst>,
Source§impl<Src, Dst> StrictCastFrom<Src> for Dstwhere
Src: StrictCast<Dst>,
impl<Src, Dst> StrictCastFrom<Src> for Dstwhere
Src: StrictCast<Dst>,
Source§fn strict_cast_from(src: Src) -> Dst
fn strict_cast_from(src: Src) -> Dst
Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.Source§impl<T> Template for T
impl<T> Template for T
Source§fn build_template(
&self,
_context: &mut TemplateContext<'_, '_>,
) -> Result<<T as Template>::Output, BevyError>
fn build_template( &self, _context: &mut TemplateContext<'_, '_>, ) -> Result<<T as Template>::Output, BevyError>
entity context to produce a Template::Output.Source§fn clone_template(&self) -> T
fn clone_template(&self) -> T
Clone.