pub struct Edge {
pub pool: Rc<RefCell<Pool>>,
pub inputs: Vec<NodeIndex>,
pub outputs: Vec<NodeIndex>,
pub env: Rc<RefCell<BindingEnv>>,
pub mark: EdgeVisitMark,
pub outputs_ready: bool,
pub deps_missing: bool,
pub implicit_deps: usize,
pub order_only_deps: usize,
pub implicit_outs: usize,
/* private fields */
}Expand description
An edge in the dependency graph; links between Nodes using Rules.
Fields§
§pool: Rc<RefCell<Pool>>§inputs: Vec<NodeIndex>§outputs: Vec<NodeIndex>§env: Rc<RefCell<BindingEnv>>§mark: EdgeVisitMark§outputs_ready: bool§deps_missing: bool§implicit_deps: usize§order_only_deps: usize§implicit_outs: usizeImplementations§
Source§impl Edge
impl Edge
pub fn new( rule: Rc<Rule>, pool: Rc<RefCell<Pool>>, env: Rc<RefCell<BindingEnv>>, ) -> Self
pub fn rule(&self) -> &Rc<Rule>
pub fn pool(&self) -> &Rc<RefCell<Pool>>
pub fn weight(&self) -> usize
pub fn outputs_ready(&self) -> bool
pub fn explicit_deps_range(&self) -> Range<usize>
pub fn implicit_deps_range(&self) -> Range<usize>
pub fn non_order_only_deps_range(&self) -> Range<usize>
pub fn order_only_deps_range(&self) -> Range<usize>
pub fn explicit_outs_range(&self) -> Range<usize>
pub fn implicit_outs_range(&self) -> Range<usize>
Sourcepub fn get_binding(&self, node_state: &NodeState, key: &[u8]) -> Cow<'_, [u8]>
pub fn get_binding(&self, node_state: &NodeState, key: &[u8]) -> Cow<'_, [u8]>
Returns the shell-escaped value of |key|.
pub fn get_binding_bool(&self, node_state: &NodeState, key: &[u8]) -> bool
Sourcepub fn get_unescaped_depfile(&self, node_state: &NodeState) -> Cow<'_, [u8]>
pub fn get_unescaped_depfile(&self, node_state: &NodeState) -> Cow<'_, [u8]>
Like GetBinding(“depfile”), but without shell escaping.
Sourcepub fn get_unescaped_rspfile(&self, node_state: &NodeState) -> Cow<'_, [u8]>
pub fn get_unescaped_rspfile(&self, node_state: &NodeState) -> Cow<'_, [u8]>
Like GetBinding(“rspfile”), but without shell escaping.
pub fn is_phony(&self) -> bool
pub fn use_console(&self) -> bool
Sourcepub fn evaluate_command(&self, node_state: &NodeState) -> Vec<u8> ⓘ
pub fn evaluate_command(&self, node_state: &NodeState) -> Vec<u8> ⓘ
Expand all variables in a command and return it as a string. If incl_rsp_file is enabled, the string will also contain the full contents of a response file (if applicable)
pub fn evaluate_command_with_rsp_file( &self, node_state: &NodeState, incl_rsp_file: bool, ) -> Vec<u8> ⓘ
pub fn maybe_phonycycle_diagnostic(&self) -> bool
Sourcepub fn all_inputs_ready(&self, state: &State) -> bool
pub fn all_inputs_ready(&self, state: &State) -> bool
Return true if all inputs’ in-edges are ready.
pub fn dump(&self)
Auto Trait Implementations§
impl Freeze for Edge
impl !RefUnwindSafe for Edge
impl !Send for Edge
impl !Sync for Edge
impl Unpin for Edge
impl !UnwindSafe for Edge
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