Skip to main content

Style

Struct Style 

Source
pub struct Style {
Show 71 fields pub display: Option<Display>, pub box_sizing: Option<BoxSizing>, pub position_type: Option<PositionType>, pub overflow_x: Option<OverflowAxis>, pub overflow_y: Option<OverflowAxis>, pub scrollbar_width: Option<f32>, pub left: Option<Animatable<Length>>, pub right: Option<Animatable<Length>>, pub top: Option<Animatable<Length>>, pub bottom: Option<Animatable<Length>>, pub width: Option<Animatable<Length>>, pub height: Option<Animatable<Length>>, pub min_width: Option<Animatable<Length>>, pub min_height: Option<Animatable<Length>>, pub max_width: Option<Animatable<Length>>, pub max_height: Option<Animatable<Length>>, pub aspect_ratio: Option<Animatable<f32>>, pub align_items: Option<AlignItems>, pub justify_items: Option<JustifyItems>, pub align_self: Option<AlignSelf>, pub justify_self: Option<JustifySelf>, pub align_content: Option<AlignContent>, pub justify_content: Option<JustifyContent>, pub margin: Option<Rect>, pub padding: Option<Rect>, pub border: Option<Rect>, pub flex_direction: Option<FlexDirection>, pub flex_wrap: Option<FlexWrap>, pub flex_grow: Option<f32>, pub flex_shrink: Option<f32>, pub flex_basis: Option<Animatable<Length>>, pub gap: Option<Animatable<Length>>, pub row_gap: Option<Animatable<Length>>, pub column_gap: Option<Animatable<Length>>, pub grid_auto_flow: Option<GridAutoFlow>, pub grid_template_rows: Option<Vec<RepeatedGridTrack>>, pub grid_template_columns: Option<Vec<RepeatedGridTrack>>, pub grid_auto_rows: Option<Vec<GridTrack>>, pub grid_auto_columns: Option<Vec<GridTrack>>, pub grid_row: Option<GridPlacement>, pub grid_column: Option<GridPlacement>, pub background_color: Option<Animatable<String>>, pub border_color: Option<Animatable<BorderColorSpec>>, pub border_radius: Option<Rect>, pub outline: Option<OutlineSpec>, pub box_shadow: Option<BoxShadowList>, pub filter: Option<FilterChain>, pub backdrop_filter: Option<FilterChain>, pub background_gradient: Option<GradientList>, pub border_gradient: Option<GradientList>, pub background_image: Option<BackgroundImageSpec>, pub z_index: Option<i32>, pub global_z_index: Option<i32>, pub focus_policy: Option<FocusPolicy>, pub cursor: Option<String>, pub transform: Option<Transform>, pub transform3d: Option<Transform3d>, pub opacity: Option<Animatable<f32>>, pub group_alpha: Option<bool>, pub cache: Option<LayerCache>, pub transition: Option<Transition>, pub scrollbar: Option<ScrollbarSpec>, pub color: Option<Animatable<String>>, pub font_size: Option<FontSize>, pub font_weight: Option<FontWeight>, pub font_family: Option<String>, pub text_align: Option<Justify>, pub line_height: Option<LineHeightSpec>, pub letter_spacing: Option<LetterSpacingSpec>, pub text_shadow: Option<TextShadowSpec>, pub line_break: Option<LineBreak>,
}
Expand description

A CSS-like style object mapped onto bevy_ui::Node and its sibling visual components. Every field is optional; unset fields keep Bevy’s defaults.

Length-valued fields accept a bare number (logical pixels) or a unit string ("50%", "100vw", "auto", "10px"). Rect-valued fields (margin/padding/border/borderRadius) accept a number (uniform), a CSS shorthand string ("8px 16px"), or a { top, right, bottom, left } object. Keyword-valued fields (display, align*, flex*, …) decode straight into the bevy_ui/bevy_text enum they drive (see the keyword_fields! deserializers below); an unrecognized keyword warns and falls back to the bevy default. Grid tracks/placements likewise parse once at decode.

Fields§

§display: Option<Display>§box_sizing: Option<BoxSizing>§position_type: Option<PositionType>§overflow_x: Option<OverflowAxis>§overflow_y: Option<OverflowAxis>§scrollbar_width: Option<f32>§left: Option<Animatable<Length>>§right: Option<Animatable<Length>>§top: Option<Animatable<Length>>§bottom: Option<Animatable<Length>>§width: Option<Animatable<Length>>§height: Option<Animatable<Length>>§min_width: Option<Animatable<Length>>§min_height: Option<Animatable<Length>>§max_width: Option<Animatable<Length>>§max_height: Option<Animatable<Length>>§aspect_ratio: Option<Animatable<f32>>§align_items: Option<AlignItems>§justify_items: Option<JustifyItems>§align_self: Option<AlignSelf>§justify_self: Option<JustifySelf>§align_content: Option<AlignContent>§justify_content: Option<JustifyContent>§margin: Option<Rect>§padding: Option<Rect>§border: Option<Rect>§flex_direction: Option<FlexDirection>§flex_wrap: Option<FlexWrap>§flex_grow: Option<f32>§flex_shrink: Option<f32>§flex_basis: Option<Animatable<Length>>§gap: Option<Animatable<Length>>§row_gap: Option<Animatable<Length>>§column_gap: Option<Animatable<Length>>§grid_auto_flow: Option<GridAutoFlow>§grid_template_rows: Option<Vec<RepeatedGridTrack>>

CSS grid template ("repeat(3, 1fr)", "1fr 2fr 100px", "auto").

§grid_template_columns: Option<Vec<RepeatedGridTrack>>§grid_auto_rows: Option<Vec<GridTrack>>

Auto-track sizing (grid-auto-rows/columns); no repeat().

§grid_auto_columns: Option<Vec<GridTrack>>§grid_row: Option<GridPlacement>

Grid line placement ("1 / 3", "span 2", "2", "auto").

§grid_column: Option<GridPlacement>§background_color: Option<Animatable<String>>

Hex background color (#rrggbb / #rrggbbaa). Animated via an interpolateColor binding ({ animated: … }).

§border_color: Option<Animatable<BorderColorSpec>>

Border color: a single CSS color (all four sides) or a { top, right, bottom, left } object (omitted sides → transparent). Only the single-color form is animatable (the binding drives all four sides); per-side { animated } wrappers warn and are ignored.

§border_radius: Option<Rect>

Corner radii; same forms as the other rect fields (corners are top-left, top-right, bottom-right, bottom-left).

§outline: Option<OutlineSpec>§box_shadow: Option<BoxShadowList>§filter: Option<FilterChain>

Layer-based, subtree-wide filter chain (see crate::filters): one { name, params } object (a 1-element chain) or an ordered array of them (chain order = pass order). Omitted params take the filter’s CSS-shorthand default (a bare grayscale is full grayscale, while brightness/contrast/saturate default to identity). params stays an untyped map at decode; it is validated later against the registered filters (FilterRegistry). A non-empty chain promotes the node to a composited layer (see crate::layer); hover/press/focus variants carry the field too (with a transition the swap eases — see crate::filters). A chain carried only by a variant still promotes eagerly at mount — promotion is presence-based across the base style and every variant, so the layer exists before the first hover.

§backdrop_filter: Option<FilterChain>

Layer-based backdropFilter chain — same wire shape as filter (one { name, params } or an ordered array, validated against the same registry), but it filters what is rendered behind the node (v1: the camera’s post-processed 3D frame — no UI) and draws the result as an opaque quad under the node’s own content. A non-empty chain promotes (presence union across base + variants, like filter). Unsetting it demotes, so an eased removal needs an identity entry left in the base chain (same snap rule as filter).

§background_gradient: Option<GradientList>

Background gradient(s); one gradient or a layered list. bevy paints it over backgroundColor (CSS background-image semantics): an opaque gradient hides the color (fallback); transparent stops reveal it.

§border_gradient: Option<GradientList>

Border gradient(s); one gradient or a layered list. Painted over borderColor (needs a border width to be visible).

§background_image: Option<BackgroundImageSpec>

Background image: painted over backgroundColor and backgroundGradient, under the node’s content (bevy’s fixed per-node paint order). src is an asset path, or { texture } naming a render target registered in crate::portal::RenderTargets. Never affects layout (the layout-driving Auto image mode is never emitted). Ignored — with a devtools warning — on image/canvas/portal (their ImageNode belongs to the element) and surface.

§z_index: Option<i32>§global_z_index: Option<i32>

Global stacking order: lifts the node (and its subtree) into the UI’s top-level stack, escaping the parent stacking context. Unlike z_index, which only reorders a node among its siblings.

§focus_policy: Option<FocusPolicy>

Pointer pass-through. Maps to bevy::ui::FocusPolicy. "pass" lets pointer interaction fall through to nodes behind this one; "block" makes it capture interaction so siblings, the 3D scene, and portals behind it don’t receive it. When unset the default is element-dependent (set in the reconciler): a <button> blocks, a <node>/container passes.

§cursor: Option<String>

Mouse cursor shown while the pointer is over this node (CSS cursor). A system keyword (winit’s SystemCursorIcon) or a custom-cursor name registered via ReactUiPlugin::cursor; the name is resolved (registry first, so a custom cursor can override a system keyword) onto the window’s CursorIcon by crate::cursor::drive_cursor_icon. Like font_family, a raw name resolved at drive time. Absent → the node contributes no cursor (its ancestor’s or the default arrow shows).

§transform: Option<Transform>

Static transform (translate/scale/rotate). Mirrors the animated transform channels; written to UiTransform. With a transition a change eases instead of snapping.

§transform3d: Option<Transform3d>

3D perspective transform, applied to the subtree’s rendered result at composite time (group semantics, like opacity/filter). Presence — even an identity {} — promotes the subtree to a composited layer (see crate::layer); the captured texture is drawn as one quad through the matrix, so animating it never re-captures. Unlike transform (which stays main-world and bakes into the capture), this never touches layout, and ancestor clips clamp the transformed result. With a transition a change eases field-wise.

§opacity: Option<Animatable<f32>>

Opacity in 0.0..=1.0, multiplied into the alpha of the background (and text) color. With a transition a change eases. On a node with children (unless group_alpha is false) the subtree is instead promoted to a composited layer and the value applies once to the whole group — see crate::layer.

§group_alpha: Option<bool>

Whether opacity on a node with children fades the subtree as a group (composited layer) rather than folding into each node’s own colors. Default true (web semantics); false opts out of layer promotion for perf-sensitive spots, keeping the per-node fold. no_overlay: a hover/ press variant must not be able to flip promotion.

§cache: Option<LayerCache>

Layer-cache hint. "always" force-promotes the subtree to a composited layer (see crate::layer) so its capture is cached and re-rendered only when its content changes — the will-change pattern for static or transform/opacity-animated subtrees. "never" also force-promotes, but the capture re-runs every frame — for content written outside the dirt tracking’s sight (live <portal> targets, app-owned textures). "auto" (or absent, the default) promotes only when another rule does (today: opacity). no_overlay: a variant must not flip promotion.

§transition: Option<Transition>

CSS-like per-channel transition timing. Present → a change to transform / opacity / backgroundColor (via re-render or hover/press) animates over time using the same driver/easing engine as { animated } bindings, rather than snapping. See [crate::transition].

§scrollbar: Option<ScrollbarSpec>

Visible scrollbar for an overflow: scroll node: "none" (default) / "default" / a styled object. Present → the reconciler stamps a crate::scrollbar::ScrollbarConfig and the shell spawns Bevy’s headless scrollbar widget over the container. Pure-serde, module-owned.

§color: Option<Animatable<String>>

Hex text color. Animated via an interpolateColor binding.

§font_size: Option<FontSize>

Font size: a number (logical pixels) or a unit string ("24px", "2vw", "1.5rem"). See FontSize.

§font_weight: Option<FontWeight>

"thin" | "light" | "normal" | "medium" | "semibold" | "bold" | "black" or a numeric weight string (e.g. "600").

§font_family: Option<String>

Registered font-family name to render this text with (see the plugin’s default_font/font config). Unknown or unset → the configured default font.

§text_align: Option<Justify>

Horizontal alignment of the text block (<text> root only): "left" | "center" | "right" | "justify" | "start" | "end".

§line_height: Option<LineHeightSpec>

Line height. A bare number is a multiple of the font size; { "px": n } is an absolute pixel height. Unset → bevy’s default (1.2× the font size).

§letter_spacing: Option<LetterSpacingSpec>

Letter spacing. A bare number is logical pixels; { "rem": n } is a multiple of the font size. Unset → no extra spacing.

§text_shadow: Option<TextShadowSpec>

A single drop shadow behind the text (<text> root only).

§line_break: Option<LineBreak>

How the text wraps when it overflows its bounds (<text> root only): "wordBoundary" (default) | "anyCharacter" | "wordOrCharacter" | "noWrap".

Trait Implementations§

Source§

impl Clone for Style

Source§

fn clone(&self) -> Style

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Style

Source§

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

Formats the value using the given formatter. Read more
Source§

impl Default for Style

Source§

fn default() -> Style

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for Style

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more

Auto Trait Implementations§

§

impl Freeze for Style

§

impl RefUnwindSafe for Style

§

impl Send for Style

§

impl Sync for Style

§

impl Unpin for Style

§

impl UnsafeUnpin for Style

§

impl UnwindSafe for Style

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, U> AsBindGroupShaderType<U> for T
where U: ShaderType, &'a T: for<'a> Into<U>,

Source§

fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U

Return the T ShaderType for self. When used in AsBindGroup derives, it is safe to assume that all images in self exist.
Source§

impl<T> Az for T

Source§

fn az<Dst>(self) -> Dst
where T: Cast<Dst>,

Casts the value.
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<Src, Dst> CastFrom<Src> for Dst
where Src: Cast<Dst>,

Source§

fn cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> CheckedAs for T

Source§

fn checked_as<Dst>(self) -> Option<Dst>
where T: CheckedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> CheckedCastFrom<Src> for Dst
where Src: CheckedCast<Dst>,

Source§

fn checked_cast_from(src: Src) -> Option<Dst>

Casts the value.
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> ConditionalSend for T
where T: Send,

Source§

impl<T> Conv for T

Source§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> Downcast for T
where T: Any,

Source§

fn into_any(self: Box<T>) -> Box<dyn Any>

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

Converts 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)

Converts &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)

Converts &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 T
where T: Any,

Source§

fn into_any(self: Box<T>) -> Box<dyn Any>

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

Convert 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)

Convert &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)

Convert &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
where T: Any + Send,

Source§

fn into_any_send(self: Box<T>) -> Box<dyn Any + Send>

Converts Box<Trait> (where Trait: DowncastSend) to Box<dyn Any + Send>, which can then be downcast into Box<ConcreteType> where ConcreteType implements Trait.
Source§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

Source§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
Source§

impl<S, T> Duplex<S> for T
where T: FromSample<S> + ToSample<S>,

Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> FmtForward for T

Source§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
Source§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
Source§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where Self: LowerExp,

Causes self to use its LowerExp implementation when Debug-formatted.
Source§

fn fmt_lower_hex(self) -> FmtLowerHex<Self>
where Self: LowerHex,

Causes self to use its LowerHex implementation when Debug-formatted.
Source§

fn fmt_octal(self) -> FmtOctal<Self>
where Self: Octal,

Causes self to use its Octal implementation when Debug-formatted.
Source§

fn fmt_pointer(self) -> FmtPointer<Self>
where Self: Pointer,

Causes self to use its Pointer implementation when Debug-formatted.
Source§

fn fmt_upper_exp(self) -> FmtUpperExp<Self>
where Self: UpperExp,

Causes self to use its UpperExp implementation when Debug-formatted.
Source§

fn fmt_upper_hex(self) -> FmtUpperHex<Self>
where Self: UpperHex,

Causes self to use its UpperHex implementation when Debug-formatted.
Source§

fn fmt_list(self) -> FmtList<Self>
where &'a Self: for<'a> IntoIterator,

Formats each item in a sequence. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<S> FromSample<S> for S

Source§

fn from_sample_(s: S) -> S

Source§

impl<T> FromTemplate for T
where T: Clone + Default + Unpin,

Source§

type Template = T

The Template for this type.
Source§

impl<T> FromWorld for T
where T: Default,

Source§

fn from_world(_world: &mut World) -> T

Creates Self using default().

Source§

impl<T, W> HasTypeWitness<W> for T
where W: MakeTypeWitness<Arg = T>, T: ?Sized,

Source§

const WITNESS: W = W::MAKE

A constant of the type witness
Source§

impl<T> HitDataExtra for T
where T: Send + Sync + Debug + Any + 'static,

Source§

impl<T> Identity for T
where T: ?Sized,

Source§

const TYPE_EQ: TypeEq<T, <T as Identity>::Type> = TypeEq::NEW

Proof that Self is the same type as Self::Type, provides methods for casting between Self and Self::Type.
Source§

type Type = T

The same type as Self, used to emulate type equality bounds (T == U) with associated type equality constraints (T: Identity<Type = U>).
Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
Source§

impl<T> IntoResult<T> for T

Source§

fn into_result(self) -> Result<T, RunSystemError>

Converts this type into the system output type.
Source§

impl<A> Is for A
where A: Any,

Source§

fn is<T>() -> bool
where T: Any,

Checks if the current type “is” another type, using a TypeId equality comparison. This is most useful in the context of generic logic. Read more
Source§

impl<T> OverflowingAs for T

Source§

fn overflowing_as<Dst>(self) -> (Dst, bool)
where T: OverflowingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> OverflowingCastFrom<Src> for Dst
where Src: OverflowingCast<Dst>,

Source§

fn overflowing_cast_from(src: Src) -> (Dst, bool)

Casts the value.
Source§

impl<G> PatchFromTemplate for G
where G: FromTemplate,

Source§

type Template = <G as FromTemplate>::Template

The Template that will be patched.
Source§

fn patch<F>(func: F) -> TemplatePatch<F, <G as PatchFromTemplate>::Template>
where F: FnOnce(&mut <G as PatchFromTemplate>::Template, &mut ResolveContext<'_>),

Takes a “patch function” func, and turns it into a TemplatePatch.
Source§

impl<T> PatchTemplate for T
where T: Template,

Source§

fn patch_template<F>(func: F) -> TemplatePatch<F, T>
where F: FnOnce(&mut T, &mut ResolveContext<'_>),

Takes a “patch function” func that patches this Template, and turns it into a TemplatePatch.
Source§

impl<T> PathsInErrorsExt for T
where T: ?Sized,

Source§

fn with_paths_in_errors(&self) -> SysWithPathsInErrors<'_, Self>

Wraps self in a SysWithPathsInErrors that includes paths in error messages.
Source§

impl<T> Pipe for T
where T: ?Sized,

Source§

fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
where Self: Sized,

Pipes by value. This is generally the method you want to use. Read more
Source§

fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
where R: 'a,

Borrows self and passes that borrow into the pipe function. Read more
Source§

fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
where R: 'a,

Mutably borrows self and passes that borrow into the pipe function. Read more
Source§

fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
where Self: Borrow<B>, B: 'a + ?Sized, R: 'a,

Borrows self, then passes self.borrow() into the pipe function. Read more
Source§

fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
where Self: BorrowMut<B>, B: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.borrow_mut() into the pipe function. Read more
Source§

fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
where Self: AsRef<U>, U: 'a + ?Sized, R: 'a,

Borrows 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
where Self: AsMut<U>, U: 'a + ?Sized, R: 'a,

Mutably borrows 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
where Self: Deref<Target = T>, T: 'a + ?Sized, R: 'a,

Borrows self, then passes self.deref() into the pipe function.
Source§

fn pipe_deref_mut<'a, T, R>( &'a mut self, func: impl FnOnce(&'a mut T) -> R, ) -> R
where Self: DerefMut<Target = T> + Deref, T: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.deref_mut() into the pipe function.
Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> SaturatingAs for T

Source§

fn saturating_as<Dst>(self) -> Dst
where T: SaturatingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> SaturatingCastFrom<Src> for Dst
where Src: SaturatingCast<Dst>,

Source§

fn saturating_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> Settings for T
where T: 'static + Send + Sync,

Source§

impl<T> StrictAs for T

Source§

fn strict_as<Dst>(self) -> Dst
where T: StrictCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> StrictCastFrom<Src> for Dst
where Src: StrictCast<Dst>,

Source§

fn strict_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> Tap for T

Source§

fn tap(self, func: impl FnOnce(&Self)) -> Self

Immutable access to a value. Read more
Source§

fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

Mutable access to a value. Read more
Source§

fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
where Self: Borrow<B>, B: ?Sized,

Immutable access to the Borrow<B> of a value. Read more
Source§

fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
where Self: BorrowMut<B>, B: ?Sized,

Mutable access to the BorrowMut<B> of a value. Read more
Source§

fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
where Self: AsRef<R>, R: ?Sized,

Immutable access to the AsRef<R> view of a value. Read more
Source§

fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
where Self: AsMut<R>, R: ?Sized,

Mutable access to the AsMut<R> view of a value. Read more
Source§

fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
where Self: Deref<Target = T>, T: ?Sized,

Immutable access to the Deref::Target of a value. Read more
Source§

fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
where Self: DerefMut<Target = T> + Deref, T: ?Sized,

Mutable access to the Deref::Target of a value. Read more
Source§

fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

Calls .tap() only in debug builds, and is erased in release builds.
Source§

fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

Calls .tap_mut() only in debug builds, and is erased in release builds.
Source§

fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
where Self: Borrow<B>, B: ?Sized,

Calls .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
where Self: BorrowMut<B>, B: ?Sized,

Calls .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
where Self: AsRef<R>, R: ?Sized,

Calls .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
where Self: AsMut<R>, R: ?Sized,

Calls .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
where Self: Deref<Target = T>, T: ?Sized,

Calls .tap_deref() only in debug builds, and is erased in release builds.
Source§

fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
where Self: DerefMut<Target = T> + Deref, T: ?Sized,

Calls .tap_deref_mut() only in debug builds, and is erased in release builds.
Source§

impl<T> Template for T
where T: Clone + Default + Unpin,

Source§

type Output = T

The type of value produced by this Template.
Source§

fn build_template( &self, _context: &mut TemplateContext<'_, '_>, ) -> Result<<T as Template>::Output, BevyError>

Uses this template and the given entity context to produce a Template::Output.
Source§

fn clone_template(&self) -> T

Clones this template. See Clone.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> ToSample<U> for T
where U: FromSample<T>,

Source§

fn to_sample_(self) -> U

Source§

impl<T> TryConv for T

Source§

fn try_conv<T>(self) -> Result<T, Self::Error>
where Self: TryInto<T>,

Attempts to convert self into T using TryInto<T>. Read more
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.
Source§

impl<T> TypeData for T
where T: 'static + Send + Sync + Clone,

Source§

fn clone_type_data(&self) -> Box<dyn TypeData>

Creates a type-erased clone of this value.
Source§

impl<T> UnwrappedAs for T

Source§

fn unwrapped_as<Dst>(self) -> Dst
where T: UnwrappedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> UnwrappedCastFrom<Src> for Dst
where Src: UnwrappedCast<Dst>,

Source§

fn unwrapped_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> WasmNotSend for T
where T: Send,

Source§

impl<T> WasmNotSendSync for T

Source§

impl<T> WasmNotSync for T
where T: Sync,

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> WrappingAs for T

Source§

fn wrapping_as<Dst>(self) -> Dst
where T: WrappingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> WrappingCastFrom<Src> for Dst
where Src: WrappingCast<Dst>,

Source§

fn wrapping_cast_from(src: Src) -> Dst

Casts the value.