pub struct ModuleGraph {
pub graphs: Vec<ResolvedVc<SingleModuleGraph>>,
}
Fields§
§graphs: Vec<ResolvedVc<SingleModuleGraph>>
Implementations§
Source§impl ModuleGraph
impl ModuleGraph
Sourcepub fn cell(self) -> Vc<Self>
pub fn cell(self) -> Vc<Self>
Places a value in a cell of the current task.
Cell is selected based on the value type and call order of cell
.
Sourcepub fn resolved_cell(self) -> ResolvedVc<Self>
pub fn resolved_cell(self) -> ResolvedVc<Self>
Places a value in a cell of the current task. Returns a
ResolvedVc
.
Cell is selected based on the value type and call order of cell
.
Source§impl ModuleGraph
impl ModuleGraph
pub fn from_graphs(graphs: Vec<Vc<SingleModuleGraph>>) -> Vc<Self>
pub fn from_single_graph(graph: Vc<SingleModuleGraph>) -> Vc<Self>
pub fn from_entry_module( module: Vc<Box<dyn Module>>, include_traced: bool, ) -> Vc<Self>
pub fn from_modules(modules: Vc<GraphEntries>, include_traced: bool) -> Vc<Self>
pub fn chunk_group_info(self: Vc<Self>) -> Vc<ChunkGroupInfo>
pub fn module_batches( self: Vc<Self>, config: Vc<BatchingConfig>, ) -> Vc<ModuleBatchesGraph>
pub fn style_groups( self: Vc<Self>, chunking_context: Vc<Box<dyn ChunkingContext>>, config: StyleGroupsConfig, ) -> Vc<StyleGroups>
pub fn async_module_info(self: Vc<Self>) -> Vc<AsyncModulesInfo>
pub fn referenced_async_modules( self: Vc<Self>, module: Vc<Box<dyn Module>>, ) -> Vc<AsyncModuleInfo>
Source§impl ModuleGraph
impl ModuleGraph
pub async fn get_graphs(&self) -> Result<Vec<ReadRef<SingleModuleGraph>>>
Sourcepub async fn traverse_edges_from_entries_bfs(
&self,
entries: impl IntoIterator<Item = ResolvedVc<Box<dyn Module>>>,
visitor: impl FnMut(Option<(&SingleModuleGraphModuleNode, &ChunkingType)>, &SingleModuleGraphModuleNode) -> GraphTraversalAction,
) -> Result<()>
pub async fn traverse_edges_from_entries_bfs( &self, entries: impl IntoIterator<Item = ResolvedVc<Box<dyn Module>>>, visitor: impl FnMut(Option<(&SingleModuleGraphModuleNode, &ChunkingType)>, &SingleModuleGraphModuleNode) -> GraphTraversalAction, ) -> Result<()>
Traverses all reachable edges exactly once and calls the visitor with the edge source and target.
This means that target nodes can be revisited (once per incoming edge).
entry
- The entry module to start the traversal fromvisitor
- Called before visiting the children of a node.- Receives (originating &SingleModuleGraphNode, edge &ChunkingType), target &SingleModuleGraphNode, state &S
- Can return GraphTraversalActions to control the traversal
Sourcepub async fn traverse_edges_from_entry(
&self,
entries: impl IntoIterator<Item = ResolvedVc<Box<dyn Module>>>,
visitor: impl FnMut(Option<(&SingleModuleGraphModuleNode, &ChunkingType)>, &SingleModuleGraphModuleNode) -> GraphTraversalAction,
) -> Result<()>
pub async fn traverse_edges_from_entry( &self, entries: impl IntoIterator<Item = ResolvedVc<Box<dyn Module>>>, visitor: impl FnMut(Option<(&SingleModuleGraphModuleNode, &ChunkingType)>, &SingleModuleGraphModuleNode) -> GraphTraversalAction, ) -> Result<()>
Traverses all reachable edges exactly once and calls the visitor with the edge source and target.
This means that target nodes can be revisited (once per incoming edge).
entry
- The entry module to start the traversal fromvisitor
- Called before visiting the children of a node.- Receives (originating &SingleModuleGraphNode, edge &ChunkingType), target &SingleModuleGraphNode, state &S
- Can return GraphTraversalActions to control the traversal
Sourcepub async fn traverse_all_edges_unordered(
&self,
visitor: impl FnMut((&SingleModuleGraphModuleNode, &ChunkingType), &SingleModuleGraphModuleNode) -> Result<()>,
) -> Result<()>
pub async fn traverse_all_edges_unordered( &self, visitor: impl FnMut((&SingleModuleGraphModuleNode, &ChunkingType), &SingleModuleGraphModuleNode) -> Result<()>, ) -> Result<()>
Traverses all edges exactly once (in an unspecified order) and calls the visitor with the edge source and target.
This means that target nodes can be revisited (once per incoming edge).
visitor
- Called before visiting the children of a node.- Receives (originating &SingleModuleGraphNode, edge &ChunkingType), target &SingleModuleGraphNode
Sourcepub async fn traverse_edges_from_entries_topological<S>(
&self,
entries: impl IntoIterator<Item = ResolvedVc<Box<dyn Module>>>,
state: &mut S,
visit_preorder: impl FnMut(Option<(&SingleModuleGraphModuleNode, &ChunkingType)>, &SingleModuleGraphModuleNode, &mut S) -> Result<GraphTraversalAction>,
visit_postorder: impl FnMut(Option<(&SingleModuleGraphModuleNode, &ChunkingType)>, &SingleModuleGraphModuleNode, &mut S),
) -> Result<()>
pub async fn traverse_edges_from_entries_topological<S>( &self, entries: impl IntoIterator<Item = ResolvedVc<Box<dyn Module>>>, state: &mut S, visit_preorder: impl FnMut(Option<(&SingleModuleGraphModuleNode, &ChunkingType)>, &SingleModuleGraphModuleNode, &mut S) -> Result<GraphTraversalAction>, visit_postorder: impl FnMut(Option<(&SingleModuleGraphModuleNode, &ChunkingType)>, &SingleModuleGraphModuleNode, &mut S), ) -> Result<()>
Traverses all reachable edges in topological order. The preorder visitor can be used to forward state down the graph, and to skip subgraphs
Use this to collect modules in evaluation order.
Target nodes can be revisited (once per incoming edge). Edges are traversed in normal order, so should correspond to reference order.
entry
- The entry module to start the traversal fromstate
- The state to be passed to the visitorsvisit_preorder
- Called before visiting the children of a node.- Receives: (originating &SingleModuleGraphNode, edge &ChunkingType), target &SingleModuleGraphNode, state &S
- Can return GraphTraversalActions to control the traversal
visit_postorder
- Called after visiting the children of a node. Return- Receives: (originating &SingleModuleGraphNode, edge &ChunkingType), target &SingleModuleGraphNode, state &S
- Can return GraphTraversalActions to control the traversal
Sourcepub async fn traverse_cycles(
&self,
edge_filter: impl Fn(&ChunkingType) -> bool,
visit_cycle: impl FnMut(&[&SingleModuleGraphModuleNode]),
) -> Result<()>
pub async fn traverse_cycles( &self, edge_filter: impl Fn(&ChunkingType) -> bool, visit_cycle: impl FnMut(&[&SingleModuleGraphModuleNode]), ) -> Result<()>
Traverse all cycles in the graph (where the edge filter returns true for the whole cycle) and call the visitor with the nodes in the cycle.
Sourcepub async fn traverse_edges_fixed_point_with_priority<S, P: Ord>(
&self,
entries: impl IntoIterator<Item = (ResolvedVc<Box<dyn Module>>, P)>,
state: &mut S,
visit: impl FnMut(Option<(&SingleModuleGraphModuleNode, &ChunkingType)>, &SingleModuleGraphModuleNode, &mut S) -> GraphTraversalAction,
priority: impl Fn(&SingleModuleGraphModuleNode, &mut S) -> P,
) -> Result<usize>
pub async fn traverse_edges_fixed_point_with_priority<S, P: Ord>( &self, entries: impl IntoIterator<Item = (ResolvedVc<Box<dyn Module>>, P)>, state: &mut S, visit: impl FnMut(Option<(&SingleModuleGraphModuleNode, &ChunkingType)>, &SingleModuleGraphModuleNode, &mut S) -> GraphTraversalAction, priority: impl Fn(&SingleModuleGraphModuleNode, &mut S) -> P, ) -> Result<usize>
Traverses all reachable nodes and also continue revisiting them as long the visitor returns GraphTraversalAction::Continue. The visitor is responsible for the runtime complexity and eventual termination of the traversal. This corresponds to computing a fixed point state for the graph.
Nodes are (re)visited according to the returned priority of the node, prioritizing high values. This priority is intended to be used a heuristic to reduce the number of retraversals.
entries
- The entry modules to start the traversal fromstate
- The state to be passed to the callbacksvisit
- Called for a specific edge- Receives: (originating &SingleModuleGraphNode, edge &ChunkingType), target &SingleModuleGraphNode, state &S
- Return GraphTraversalActions to control the traversal
priority
- Called for before visiting the children of a node to determine its priority.- Receives: target &SingleModuleGraphNode, state &S
- Return a priority value for the node
Returns the number of node visits (i.e. higher than the node count if there are retraversals).
Trait Implementations§
Source§impl Clone for ModuleGraph
impl Clone for ModuleGraph
Source§fn clone(&self) -> ModuleGraph
fn clone(&self) -> ModuleGraph
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Default for ModuleGraph
impl Default for ModuleGraph
Source§fn default() -> ModuleGraph
fn default() -> ModuleGraph
Source§impl<'de> Deserialize<'de> for ModuleGraph
impl<'de> Deserialize<'de> for ModuleGraph
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>,
Source§impl From<ModuleGraph> for Vc<ModuleGraph>
impl From<ModuleGraph> for Vc<ModuleGraph>
Source§fn from(value: ModuleGraph) -> Self
fn from(value: ModuleGraph) -> Self
Source§impl PartialEq for ModuleGraph
impl PartialEq for ModuleGraph
Source§impl Serialize for ModuleGraph
impl Serialize for ModuleGraph
Source§impl ShrinkToFit for ModuleGraph
impl ShrinkToFit for ModuleGraph
fn shrink_to_fit(&mut self)
Source§impl TraceRawVcs for ModuleGraph
impl TraceRawVcs for ModuleGraph
fn trace_raw_vcs(&self, __context__: &mut TraceRawVcsContext)
fn get_raw_vcs(&self) -> Vec<RawVc>
Source§impl ValueDebug for ModuleGraph
impl ValueDebug for ModuleGraph
Source§impl ValueDebugFormat for ModuleGraph
impl ValueDebugFormat for ModuleGraph
fn value_debug_format<'a>(&'a self, depth: usize) -> ValueDebugFormatString<'a>
Source§impl VcValueType for ModuleGraph
impl VcValueType for ModuleGraph
Source§type Read = VcDefaultRead<ModuleGraph>
type Read = VcDefaultRead<ModuleGraph>
Source§type CellMode = VcCellSharedMode<ModuleGraph>
type CellMode = VcCellSharedMode<ModuleGraph>
Source§fn get_value_type_id() -> ValueTypeId
fn get_value_type_id() -> ValueTypeId
impl Eq for ModuleGraph
impl NonLocalValue for ModuleGraph
impl StructuralPartialEq for ModuleGraph
impl Upcast<Box<dyn ValueDebug>> for ModuleGraph
Auto Trait Implementations§
impl Freeze for ModuleGraph
impl !RefUnwindSafe for ModuleGraph
impl Send for ModuleGraph
impl Sync for ModuleGraph
impl Unpin for ModuleGraph
impl !UnwindSafe for ModuleGraph
Blanket Implementations§
§impl<T> Any for Twhere
T: Any,
impl<T> Any for Twhere
T: Any,
fn get_type_id(&self) -> TypeId
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Conv for T
impl<T> Conv for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.§impl<T> FmtForward for T
impl<T> FmtForward for T
§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.§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.§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.§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.§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.§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.§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.§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.§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
§impl<T> ImplicitClone for Twhere
T: Clone,
impl<T> ImplicitClone for Twhere
T: Clone,
fn clone_quote_var(&self) -> Self
§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> ⓘ
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 more§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2where
T: SharedNiching<N1, N2>,
N1: Niching<T>,
N2: Niching<T>,
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2where
T: SharedNiching<N1, N2>,
N1: Niching<T>,
N2: Niching<T>,
§impl<D> OwoColorize for D
impl<D> OwoColorize for D
§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg
or
a color-specific method, such as OwoColorize::green
, Read more§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg
or
a color-specific method, such as OwoColorize::on_yellow
, Read more§fn fg_rgb<const R: u8, const G: u8, const B: u8>(
&self,
) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>
fn fg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>
§fn bg_rgb<const R: u8, const G: u8, const B: u8>(
&self,
) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>
fn bg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>
§fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>
fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>
§fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>
fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>
§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
§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 more§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 more§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
§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
§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.§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.§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> Pointable for T
impl<T> Pointable for T
§impl<T> Pointee for T
impl<T> Pointee for T
Source§impl<T> Serialize for T
impl<T> Serialize for T
fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<(), Error>
fn do_erased_serialize( &self, serializer: &mut dyn Serializer, ) -> Result<(), ErrorImpl>
§impl<T> Tap for T
impl<T> Tap for T
§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 more§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 more§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 more§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 more§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 more§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 more§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.§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.§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.§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.§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.§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.§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.