Struct cargo_hackerman::feat_graph::FeatGraph
source · pub struct FeatGraph<'a> {
pub root: NodeIndex,
pub workspace_members: BTreeSet<Pid<'a>>,
pub features: Graph<Feature<'a>, Link>,
pub fid_cache: BTreeMap<Fid<'a>, NodeIndex>,
pub platforms: Vec<&'a str>,
pub cfgs: Vec<Cfg>,
pub triggers: Vec<Trigger<'a>>,
pub focus_nodes: Option<BTreeSet<NodeIndex>>,
pub focus_edges: Option<BTreeSet<EdgeIndex>>,
pub focus_targets: Option<BTreeSet<NodeIndex>>,
/* private fields */
}Fields§
§root: NodeIndexroot node, should be 0
workspace_members: BTreeSet<Pid<'a>>set of workspace members
features: Graph<Feature<'a>, Link>a dependency graph between features Feature = Fid + decoration if it’s external, internal or root
fid_cache: BTreeMap<Fid<'a>, NodeIndex>§platforms: Vec<&'a str>§cfgs: Vec<Cfg>§triggers: Vec<Trigger<'a>>§focus_nodes: Option<BTreeSet<NodeIndex>>§focus_edges: Option<BTreeSet<EdgeIndex>>§focus_targets: Option<BTreeSet<NodeIndex>>Implementations§
source§impl<'a> FeatGraph<'a>
impl<'a> FeatGraph<'a>
pub fn fid_index(&mut self, fid: Fid<'a>) -> NodeIndex
sourcepub fn base_node(&self, node: NodeIndex) -> Option<NodeIndex>
pub fn base_node(&self, node: NodeIndex) -> Option<NodeIndex>
for any node find node for the base of this package
pub fn shrink_to_target(&mut self) -> Result<()>
pub fn init( meta: &'a Metadata, platforms: Vec<&'a str>, cfgs: Vec<Cfg> ) -> Result<Self>
pub fn optimize(&mut self, no_transitive: bool) -> Result<()>
pub fn rebuild_cache(&mut self) -> Result<()>
pub fn add_edge<A, B>( &mut self, a: A, b: B, optional: bool, kind: DepKindInfo ) -> Result<NodeIndex>where A: HasIndex<'a>, B: HasIndex<'a>,
Trait Implementations§
source§impl<'a> Labeller<'a, NodeIndex<u32>, EdgeIndex<u32>> for FeatGraph<'a>
impl<'a> Labeller<'a, NodeIndex<u32>, EdgeIndex<u32>> for FeatGraph<'a>
source§fn node_id(&'a self, n: &NodeIndex) -> Id<'a>
fn node_id(&'a self, n: &NodeIndex) -> Id<'a>
Maps
n to a unique identifier with respect to self. The
implementer is responsible for ensuring that the returned name
is a valid DOT identifier.source§fn node_label(&'a self, n: &NodeIndex) -> LabelText<'a>
fn node_label(&'a self, n: &NodeIndex) -> LabelText<'a>
Maps
n to a label that will be used in the rendered output.
The label need not be unique, and may be the empty string; the
default is just the output from node_id.source§fn edge_label(&'a self, e: &EdgeIndex) -> LabelText<'a>
fn edge_label(&'a self, e: &EdgeIndex) -> LabelText<'a>
Maps
e to a label that will be used in the rendered output.
The label need not be unique, and may be the empty string; the
default is in fact the empty string.source§fn node_style(&'a self, n: &NodeIndex) -> Style
fn node_style(&'a self, n: &NodeIndex) -> Style
Maps
n to a style that will be used in the rendered output.source§fn edge_end_arrow(&'a self, _e: &EdgeIndex) -> Arrow
fn edge_end_arrow(&'a self, _e: &EdgeIndex) -> Arrow
Maps
e to arrow style that will be used on the end of an edge.
Defaults to default arrow style.source§fn edge_start_arrow(&'a self, _e: &EdgeIndex) -> Arrow
fn edge_start_arrow(&'a self, _e: &EdgeIndex) -> Arrow
Maps
e to arrow style that will be used on the end of an edge.
Defaults to default arrow style.source§fn edge_style(&'a self, e: &EdgeIndex) -> Style
fn edge_style(&'a self, e: &EdgeIndex) -> Style
Maps
e to a style that will be used in the rendered output.Auto Trait Implementations§
impl<'a> RefUnwindSafe for FeatGraph<'a>
impl<'a> Send for FeatGraph<'a>
impl<'a> Sync for FeatGraph<'a>
impl<'a> Unpin for FeatGraph<'a>
impl<'a> UnwindSafe for FeatGraph<'a>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
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>
§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,
Set the foreground color generically Read more
§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where C: Color,
Set the background color generically. Read more
§fn on_yellow<'a>(&'a self) -> BgColorDisplay<'a, Yellow, Self>
fn on_yellow<'a>(&'a self) -> BgColorDisplay<'a, Yellow, Self>
Change the background color to yellow
§fn magenta<'a>(&'a self) -> FgColorDisplay<'a, Magenta, Self>
fn magenta<'a>(&'a self) -> FgColorDisplay<'a, Magenta, Self>
Change the foreground color to magenta
§fn on_magenta<'a>(&'a self) -> BgColorDisplay<'a, Magenta, Self>
fn on_magenta<'a>(&'a self) -> BgColorDisplay<'a, Magenta, Self>
Change the background color to magenta
§fn on_purple<'a>(&'a self) -> BgColorDisplay<'a, Magenta, Self>
fn on_purple<'a>(&'a self) -> BgColorDisplay<'a, Magenta, Self>
Change the background color to purple
§fn default_color<'a>(&'a self) -> FgColorDisplay<'a, Default, Self>
fn default_color<'a>(&'a self) -> FgColorDisplay<'a, Default, Self>
Change the foreground color to the terminal default
§fn on_default_color<'a>(&'a self) -> BgColorDisplay<'a, Default, Self>
fn on_default_color<'a>(&'a self) -> BgColorDisplay<'a, Default, Self>
Change the background color to the terminal default
§fn bright_black<'a>(&'a self) -> FgColorDisplay<'a, BrightBlack, Self>
fn bright_black<'a>(&'a self) -> FgColorDisplay<'a, BrightBlack, Self>
Change the foreground color to bright black
§fn on_bright_black<'a>(&'a self) -> BgColorDisplay<'a, BrightBlack, Self>
fn on_bright_black<'a>(&'a self) -> BgColorDisplay<'a, BrightBlack, Self>
Change the background color to bright black
§fn bright_red<'a>(&'a self) -> FgColorDisplay<'a, BrightRed, Self>
fn bright_red<'a>(&'a self) -> FgColorDisplay<'a, BrightRed, Self>
Change the foreground color to bright red
§fn on_bright_red<'a>(&'a self) -> BgColorDisplay<'a, BrightRed, Self>
fn on_bright_red<'a>(&'a self) -> BgColorDisplay<'a, BrightRed, Self>
Change the background color to bright red
§fn bright_green<'a>(&'a self) -> FgColorDisplay<'a, BrightGreen, Self>
fn bright_green<'a>(&'a self) -> FgColorDisplay<'a, BrightGreen, Self>
Change the foreground color to bright green
§fn on_bright_green<'a>(&'a self) -> BgColorDisplay<'a, BrightGreen, Self>
fn on_bright_green<'a>(&'a self) -> BgColorDisplay<'a, BrightGreen, Self>
Change the background color to bright green
§fn bright_yellow<'a>(&'a self) -> FgColorDisplay<'a, BrightYellow, Self>
fn bright_yellow<'a>(&'a self) -> FgColorDisplay<'a, BrightYellow, Self>
Change the foreground color to bright yellow
§fn on_bright_yellow<'a>(&'a self) -> BgColorDisplay<'a, BrightYellow, Self>
fn on_bright_yellow<'a>(&'a self) -> BgColorDisplay<'a, BrightYellow, Self>
Change the background color to bright yellow
§fn bright_blue<'a>(&'a self) -> FgColorDisplay<'a, BrightBlue, Self>
fn bright_blue<'a>(&'a self) -> FgColorDisplay<'a, BrightBlue, Self>
Change the foreground color to bright blue
§fn on_bright_blue<'a>(&'a self) -> BgColorDisplay<'a, BrightBlue, Self>
fn on_bright_blue<'a>(&'a self) -> BgColorDisplay<'a, BrightBlue, Self>
Change the background color to bright blue
§fn bright_magenta<'a>(&'a self) -> FgColorDisplay<'a, BrightMagenta, Self>
fn bright_magenta<'a>(&'a self) -> FgColorDisplay<'a, BrightMagenta, Self>
Change the foreground color to bright magenta
§fn on_bright_magenta<'a>(&'a self) -> BgColorDisplay<'a, BrightMagenta, Self>
fn on_bright_magenta<'a>(&'a self) -> BgColorDisplay<'a, BrightMagenta, Self>
Change the background color to bright magenta
§fn bright_purple<'a>(&'a self) -> FgColorDisplay<'a, BrightMagenta, Self>
fn bright_purple<'a>(&'a self) -> FgColorDisplay<'a, BrightMagenta, Self>
Change the foreground color to bright purple
§fn on_bright_purple<'a>(&'a self) -> BgColorDisplay<'a, BrightMagenta, Self>
fn on_bright_purple<'a>(&'a self) -> BgColorDisplay<'a, BrightMagenta, Self>
Change the background color to bright purple
§fn bright_cyan<'a>(&'a self) -> FgColorDisplay<'a, BrightCyan, Self>
fn bright_cyan<'a>(&'a self) -> FgColorDisplay<'a, BrightCyan, Self>
Change the foreground color to bright cyan
§fn on_bright_cyan<'a>(&'a self) -> BgColorDisplay<'a, BrightCyan, Self>
fn on_bright_cyan<'a>(&'a self) -> BgColorDisplay<'a, BrightCyan, Self>
Change the background color to bright cyan
§fn bright_white<'a>(&'a self) -> FgColorDisplay<'a, BrightWhite, Self>
fn bright_white<'a>(&'a self) -> FgColorDisplay<'a, BrightWhite, Self>
Change the foreground color to bright white
§fn on_bright_white<'a>(&'a self) -> BgColorDisplay<'a, BrightWhite, Self>
fn on_bright_white<'a>(&'a self) -> BgColorDisplay<'a, BrightWhite, Self>
Change the background color to bright white
§fn blink_fast<'a>(&'a self) -> BlinkFastDisplay<'a, Self>
fn blink_fast<'a>(&'a self) -> BlinkFastDisplay<'a, Self>
Make the text blink (but fast!)
Hide the text
§fn strikethrough<'a>(&'a self) -> StrikeThroughDisplay<'a, Self>
fn strikethrough<'a>(&'a self) -> StrikeThroughDisplay<'a, Self>
Cross out the text
§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where Color: DynColor,
Set the foreground color at runtime. Only use if you do not know which color will be used at
compile-time. If the color is constant, use either
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,
Set the background color at runtime. Only use if you do not know what color to use at
compile-time. If the color is constant, use either
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>
Set the foreground color to a specific RGB value.
§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>
Set the background color to a specific RGB value.
§fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>
fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>
Sets the foreground color to an RGB value.
§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>
Sets the background color to an RGB value.