Skip to main content

DiffView

Struct DiffView 

Source
pub struct DiffView { /* private fields */ }
Expand description

A diff view widget with selectable rendering backends.

Implementations§

Source§

impl DiffView

Source

pub fn new() -> Self

Create a new, empty diff view.

Source

pub fn before(self, before: impl Into<Arc<str>>) -> Self

Set the “before” content of the diff.

Source

pub fn after(self, after: impl Into<Arc<str>>) -> Self

Set the “after” content of the diff.

Source

pub fn patch(self, patch: impl Into<Arc<str>>) -> Self

Set the diff content from a raw unified diff (patch) string.

Source

pub fn with_content( before: impl Into<Arc<str>>, after: impl Into<Arc<str>>, ) -> Self

Create a diff view for the given before/after text.

Source

pub fn from_patch(patch: impl Into<Arc<str>>) -> Self

Create a diff view from a raw unified diff (patch) string.

This constructor is useful when you have a pre-computed patch (e.g. from git or an API) and want to display it with DiffView colors and formatting.

Source

pub fn backend(self, backend: DiffViewBackend) -> Self

Set rendering backend explicitly.

Not required in most cases: calling Self::text_area or Self::document_view also infers backend when this isn’t set.

Source

pub fn editable(self, editable: bool) -> Self

Enable/disable editing when using the TextArea backend.

This flag is ignored by the DocumentView backend.

Source

pub fn scroll_offset(self, offset: usize) -> Self

Set controlled vertical scroll offset for rendered pane(s).

Source

pub fn scroll_to_hunk(self, index: usize) -> Self

Scroll rendered pane(s) to the first visible row for a parsed patch hunk.

index is zero-based patch order. The target is resolved after indentation trimming and context collapse, then delegated to the active backend so soft wrapping maps to the final visual row during layout. A controlled Self::scroll_offset takes precedence if both are set.

Source

pub fn on_scroll(self, cb: Callback<DiffScrollEvent>) -> Self

Receive pane-aware scroll events from rendered pane(s).

Source

pub fn on_context_separator_click( self, cb: Callback<DiffContextSeparatorEvent>, ) -> Self

Set the callback fired when a visible context separator is clicked.

Use Self::expanded_contexts with the clicked event’s range on the next render to expand the hidden lines represented by that separator.

Source

pub fn context_separator_hover_style(self, style: Style) -> Self

Set the style patched over a context separator while the pointer hovers it.

Source

pub fn mode(self, mode: DiffViewMode) -> Self

Set the diff presentation mode.

Source

pub fn width(self, width: impl Into<Length>) -> Self

Override the outer diff view width.

Source

pub fn height(self, height: impl Into<Length>) -> Self

Override the outer diff view height.

Source

pub fn text_area(self, text_area: TextArea) -> Self

Provide a base TextArea configuration.

When backend is not explicitly set, this also selects the TextArea backend.

Source

pub fn document_view(self, document_view: DocumentView) -> Self

Provide a base DocumentView configuration.

When backend is not explicitly set, this also selects the DocumentView backend.

Source

pub fn wrap(self, wrap: bool) -> Self

Enable/disable wrapping in both backends.

Source

pub fn line_numbers(self, show: bool) -> Self

Enable/disable line numbers in both backends.

Source

pub fn min_line_number_width(self, width: u8) -> Self

Set minimum line-number digit width in both backends.

Source

pub fn border(self, border: bool) -> Self

Show or hide an outer border around the whole DiffView.

Source

pub fn panels_border(self, border: bool) -> Self

Show or hide per-pane borders in split/unified pane wrappers.

Source

pub fn highlight_full_width(self, enabled: bool) -> Self

Highlight changed-line backgrounds to full row width.

Source

pub fn scrollbar(self, show: bool) -> Self

Show or hide vertical scrollbars in both backends.

Source

pub fn gutter_inset(self, inset: u16) -> Self

Reserve empty cells before the gutter / line numbers in both backends.

Source

pub fn h_scrollbar(self, show: bool) -> Self

Show or hide horizontal scrollbars in both backends.

Source

pub fn focusable(self, focusable: bool) -> Self

Control focusability in both backends.

Source

pub fn single_scrollbar(self, enabled: bool) -> Self

In split mode, render a single vertical scrollbar on the right pane only.

Source

pub fn join_frame(self, join: bool) -> Self

Join pane frames when adjacent (uses Frame::join_frame).

Source

pub fn vertical_separator(self, enabled: bool) -> Self

Show a vertical separator between split panes.

Source

pub fn vertical_separator_char(self, ch: char) -> Self

Set the split-pane vertical separator character.

Source

pub fn vertical_separator_style(self, style: Style) -> Self

Set style for the split-pane vertical separator.

Source

pub fn diff_style(self, style: DiffPalette) -> Self

Configure diff line and word styles.

Source

pub fn neutral_bg(self, color: Color) -> Self

Set background color for unchanged/context lines.

Note: split filler lines (DiffLineKind::Empty) are not affected.

Source

pub fn shared_selection_id(self, id: impl Into<Arc<str>>) -> Self

Enable cross-widget drag selection for this diff view’s internal panels.

In unified mode the id is used as-is on the single panel. In split mode the id is suffixed with :left and :right so that only same-side panels share selection across multiple DiffViews.

Multiple DiffViews (and plain DocumentViews) under the same ScrollView that share the same id participate in unified drag selection and copy.

Source

pub fn prefixes(self, prefixes: DiffPrefixes) -> Self

Configure diff prefixes.

Source

pub fn show_prefixes(self, show: bool) -> Self

Toggle prefix rendering.

Source

pub fn word_diff(self, enabled: bool) -> Self

Toggle word-level diff highlighting.

Source

pub fn trim_common_indent(self, enabled: bool) -> Self

Trim shared leading indentation from diff line content.

When enabled (the default), DiffView computes the smallest common leading indent across visible non-empty diff lines and removes that many leading spaces/tabs from line content before rendering. In split mode, both panes share the same trim amount so rows stay aligned.

Source

pub fn context_lines(self, n: usize) -> Self

Set the number of unchanged context lines to keep around each change.

When set, unchanged regions farther than n lines from any change are collapsed into a single separator line. The default (None) shows all lines.

DiffView::with_content(before, after).context_lines(4)
Source

pub fn show_context_separator(self, show: bool) -> Self

Show or hide the placeholder separator line when collapsing context.

When true (the default) a context separator line is rendered in place of each collapsed region. When false the hidden lines are simply omitted without any visual placeholder. Only meaningful when Self::context_lines is set.

Source

pub fn context_separator_text(self, text: impl Into<Arc<str>>) -> Self

Set the template text used for context separators.

Supported placeholders:

  • {count}: number of hidden lines
  • {line_word}: line or lines
  • {direction}: above, below, or between
  • {arrow}: , , or ↑↓
Source

pub fn context_separator_min_lines(self, min_lines: usize) -> Self

Minimum number of hidden lines required before a context separator is shown.

Shorter collapsed runs render as normal context lines instead of a separator placeholder (default: 2).

Source

pub fn context_expand_lines(self, lines: usize) -> Self

Default number of hidden lines revealed per context-separator click.

This value is included in DiffContextSeparatorEvent and used by DiffContextSeparatorEvent::next_expansion (default: 20).

Source

pub fn expanded_contexts( self, ranges: impl IntoIterator<Item = DiffContextRange>, ) -> Self

Set collapsed context ranges that should render fully expanded.

Pass ranges received from DiffContextSeparatorEvent::range to turn individual separators back into their hidden lines. This is controlled by the app so expansion state survives normal component rerenders.

Source

pub fn expanded_context_expansions( self, expansions: impl IntoIterator<Item = DiffContextExpansion>, ) -> Self

Set controlled partial or full context expansions.

Source

pub fn expanded_context(self, range: DiffContextRange) -> Self

Expand one collapsed context range fully.

Source

pub fn expanded_context_lines( self, range: DiffContextRange, lines_revealed: usize, ) -> Self

Expand one collapsed context range by a specific number of lines.

Source

pub fn base_color_strategy( self, strategy: impl TextAreaColorStrategy + 'static, ) -> Self

Provide a base color strategy (syntax highlighting).

Applied to both backends:

  • TextArea backend via TextArea::color_strategy
  • DocumentView backend via the internal diff formatter
Source

pub fn language(self, language: impl Into<Arc<str>>) -> Self

Set the language identifier for syntax strategies.

Source

pub fn language_from_path(self, path: impl AsRef<Path>) -> Self

Set language identifier by resolving from a file path’s extension or name.

Uses the default syntect syntax definitions. If no syntax matches the path, the language remains unset (plain text fallback). TypeScript/TSX paths fall back to JavaScript/JSX-compatible syntaxes when the default set does not provide exact grammars.

Source

pub fn theme(self, theme: impl Into<Arc<str>>) -> Self

Set the theme identifier for syntax strategies.

Source

pub fn with_syntax( self, language: impl Into<Arc<str>>, theme: impl Into<Arc<str>>, ) -> Self

Enable syntect-based syntax highlighting.

Source

pub fn with_syntax_bg( self, language: impl Into<Arc<str>>, theme: impl Into<Arc<str>>, ) -> Self

Enable syntect-based syntax highlighting with background colors.

Source

pub fn with_diff(self, data: DiffData) -> Self

Use precomputed diff data.

Source

pub fn with_shared_diff(self, data: Arc<DiffData>) -> Self

Use shared precomputed diff data.

Trait Implementations§

Source§

impl Clone for DiffView

Source§

fn clone(&self) -> DiffView

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 Default for DiffView

Source§

fn default() -> Self

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

impl From<DiffView> for Element

Source§

fn from(view: DiffView) -> Self

Converts to this type from the input type.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S
where T: Real + Zero + Arithmetics + Clone, Swp: WhitePoint<T>, Dwp: WhitePoint<T>, D: AdaptFrom<S, Swp, Dwp, T>,

Source§

fn adapt_into_using<M>(self, method: M) -> D
where M: TransformMatrix<T>,

👎Deprecated since 0.7.7:

replaced by palette::chromatic_adaptation::AdaptIntoUnclamped

Convert the source color to the destination color using the specified method.
Source§

fn adapt_into(self) -> D

👎Deprecated since 0.7.7:

replaced by palette::chromatic_adaptation::AdaptIntoUnclamped

Convert the source color to the destination color using the bradford method by default.
Source§

impl<T, C> AdaptIntoUnclamped<T> for C
where T: AdaptFromUnclamped<C>,

Source§

type Scalar = <T as AdaptFromUnclamped<C>>::Scalar

The number type that’s used as the color’s components.
Source§

fn adapt_into_unclamped_with<M>(self) -> T

Adapt a color of type Self into a color of type T, using the custom matrix M. Read more
Source§

fn adapt_into_unclamped(self) -> T
where Bradford: LmsToXyz<Self::Scalar> + XyzToLms<Self::Scalar>,

Adapt a color of type Self into a color of type T, using the Bradford matrix. Read more
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, C> ArraysFrom<C> for T
where C: IntoArrays<T>,

Source§

fn arrays_from(colors: C) -> T

Cast a collection of colors into a collection of arrays.
Source§

impl<T, C> ArraysInto<C> for T
where C: FromArrays<T>,

Source§

fn arrays_into(self) -> C

Cast this collection of arrays into a collection of colors.
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<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for U
where T: FromCam16Unclamped<WpParam, U>,

Source§

type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar

The number type that’s used in parameters when converting.
Source§

fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T

Converts self into C, using the provided parameters.
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> 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, C> ComponentsFrom<C> for T
where C: IntoComponents<T>,

Source§

fn components_from(colors: C) -> T

Cast a collection of colors into a collection of color components.
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> 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> 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<T> FromAngle<T> for T

Source§

fn from_angle(angle: T) -> T

Performs a conversion from angle.
Source§

impl<T, U> FromStimulus<U> for T
where U: IntoStimulus<T>,

Source§

fn from_stimulus(other: U) -> T

Converts other into Self, while performing the appropriate scaling, rounding and clamping.
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, U> IntoAngle<U> for T
where U: FromAngle<T>,

Source§

fn into_angle(self) -> U

Performs a conversion into T.
Source§

impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for U
where T: Cam16FromUnclamped<WpParam, U>,

Source§

type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar

The number type that’s used in parameters when converting.
Source§

fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T

Converts self into C, using the provided parameters.
Source§

impl<T, U> IntoColor<U> for T
where U: FromColor<T>,

Source§

fn into_color(self) -> U

Convert into T with values clamped to the color defined bounds Read more
Source§

impl<T, U> IntoColorUnclamped<U> for T
where U: FromColorUnclamped<T>,

Source§

fn into_color_unclamped(self) -> U

Convert into T. The resulting color might be invalid in its color space Read more
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> IntoElement for T
where T: Into<Element>,

Source§

fn key(self, key: impl Into<Key>) -> Element

Convert into an element and assign a stable sibling key used during multi-child container reconciliation.
Source§

fn component_state_key(self, key: impl Into<Key>) -> Element

Convert into an element and assign a path-independent component state key. See Element::component_state_key.
Source§

fn min_width(self, w: Length) -> Element

Set minimum width constraint. See LayoutConstraints::min_w for semantics.
Source§

fn min_height(self, h: Length) -> Element

Set minimum height constraint. See LayoutConstraints::min_h for semantics.
Source§

fn max_width(self, w: Length) -> Element

Set maximum width constraint. See LayoutConstraints::max_w for semantics.
Source§

fn max_height(self, h: Length) -> Element

Set maximum height constraint. See LayoutConstraints::max_h for semantics.
Source§

fn reflows(self, reflows: bool) -> Element

Mark whether this element reflows when its main-axis allocation changes.
Source§

fn shrink_priority(self, priority: ShrinkPriority) -> Element

Set this element’s stack shrink priority.
Source§

impl<T> IntoStimulus<T> for T

Source§

fn into_stimulus(self) -> T

Converts self into T, while performing the appropriate scaling, rounding and clamping.
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> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

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

Source§

impl<R, P> ReadPrimitive<R> for P
where R: Read + ReadEndian<P>, P: Default,

Source§

fn read_from_little_endian(read: &mut R) -> Result<Self, Error>

Read this value from the supplied reader. Same as ReadEndian::read_from_little_endian().
Source§

fn read_from_big_endian(read: &mut R) -> Result<Self, Error>

Read this value from the supplied reader. Same as ReadEndian::read_from_big_endian().
Source§

fn read_from_native_endian(read: &mut R) -> Result<Self, Error>

Read this value from the supplied reader. Same as ReadEndian::read_from_native_endian().
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> 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, C> TryComponentsInto<C> for T
where C: TryFromComponents<T>,

Source§

type Error = <C as TryFromComponents<T>>::Error

The error for when try_into_colors fails to cast.
Source§

fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>

Try to cast this collection of color components into a collection of colors. Read more
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, U> TryIntoColor<U> for T
where U: TryFromColor<T>,

Source§

fn try_into_color(self) -> Result<U, OutOfBounds<U>>

Convert into T, returning ok if the color is inside of its defined range, otherwise an OutOfBounds error is returned which contains the unclamped color. Read more
Source§

impl<C, U> UintsFrom<C> for U
where C: IntoUints<U>,

Source§

fn uints_from(colors: C) -> U

Cast a collection of colors into a collection of unsigned integers.
Source§

impl<C, U> UintsInto<C> for U
where C: FromUints<U>,

Source§

fn uints_into(self) -> C

Cast this collection of unsigned integers into a collection of colors.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

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