pub fn fire(&self, state: &mut State) -> Result<(), AcesError> {
        for (&dot_id, &weight) in self.pre_set.iter() {
            state.decrease(dot_id, weight)?;
        }

        for (&dot_id, &(weight, _)) in self.post_set.iter() {
            state.increase(dot_id, weight)?;
        }

        Ok(())
    }
/// Note: this routine doesn't check for enablement.  Instead, it
/// assumes that the firing component is enabled in the given
/// state.  Therefore, prior to a call to [`fire()`],
/// [`is_enabled()`] should return `true` (it may be called
/// directly, or e.g. via [`FiringSet::get_enabled()`]).
///
/// [`is_enabled()`]: FiringComponent::is_enabled()
/// [`fire()`]: FiringComponent::fire()
this routine doesn't check for enablement.  Instead, it
assumes that the firing component is enabled in the given
state.


this routine doesn ' t check for enablement . Instead it assumes that the firing component is enabled in the given state .
pub fn fire(&self, state: &mut State) -> Result<(), AcesError> {
        for (&dot_id, &weight) in self.pre_set.iter() {
            state.decrease(dot_id, weight)?;
        }
        for (&dot_id, &(weight, _)) in self.post_set.iter() {
            state.increase(dot_id, weight)?;
        }
        Ok(())
    }
pub fn fire ( & self , state : & mut State ) -> Result < ( ) , AcesError > { for ( & dot_id , & weight ) in self . pre_set . iter ( ) { state . decrease ( dot_id , weight ) ? ; } for ( & dot_id , & ( weight , _ ) ) in self . post_set . iter ( ) { state . increase ( dot_id , weight ) ? ; } Ok ( ( ) ) }
Note: this routine doesn't check for enablement.
Note : this routine doesn ' t check for enablement .
&self
state
&mut State
&self
state
&mut State