pub fn merge(&self, other: &Driver) -> Result<Option<Driver>> {
        if self.location == other.location {
            Ok(Some(Driver::new(
                self.program.clone(),
                self.location.clone(),
                self.state.clone().merge(&other.state)?,
                self.architecture.clone(),
            )))
        } else {
            Ok(None)
        }
    }
/// Merge two drivers together, if they are at the same program location
Merge two drivers together, if they are at the same program location
Merge two drivers together if they are at the same program location
pub fn merge(&self, other: &Driver) -> Result<Option<Driver>> {
        if self.location == other.location {
            Ok(Some(Driver::new(
                self.program.clone(),
                self.location.clone(),
                self.state.clone().merge(&other.state)?,
                self.architecture.clone(),
            )))
        } else {
            Ok(None)
        }
    }
pub fn merge ( & self , other : & Driver ) -> Result < Option < Driver > > { if self . location == other . location { Ok ( Some ( Driver :: new ( self . program . clone ( ) , self . location . clone ( ) , self . state . clone ( ) . merge ( & other . state ) ? , self . architecture . clone ( ) , ) ) ) } else { Ok ( None ) } }
Merge two drivers together, if they are at the same program location
Merge two drivers together if they are at the same program location
&self
other
&Driver