pub fn for_close_init_channel(
        e: &CloseInit,
        src_chain: &dyn ChainHandle,
    ) -> Result<Self, BoxError> {
        let dst_chain_id = get_counterparty_chain(src_chain, e.channel_id(), &e.port_id())?;

        Ok(UnidirectionalChannelPath {
            dst_chain_id,
            src_chain_id: src_chain.id(),
            src_channel_id: e.channel_id().clone(),
            src_port_id: e.port_id().clone(),
        }
        .into())
    }
/// Build the object associated with the given [`CloseInit`] event.
Build the object associated with the given [`CloseInit`] event.
Build the object associated with the given [ ` CloseInit ` ] event .
pub fn for_close_init_channel(
        e: &CloseInit,
        src_chain: &dyn ChainHandle,
    ) -> Result<Self, BoxError> {
        let dst_chain_id = get_counterparty_chain(src_chain, e.channel_id(), &e.port_id())?;
        Ok(UnidirectionalChannelPath {
            dst_chain_id,
            src_chain_id: src_chain.id(),
            src_channel_id: e.channel_id().clone(),
            src_port_id: e.port_id().clone(),
        }
        .into())
    }
pub fn for_close_init_channel ( e : & CloseInit , src_chain : & dyn ChainHandle , ) -> Result < Self , BoxError > { let dst_chain_id = get_counterparty_chain ( src_chain , e . channel_id ( ) , & e . port_id ( ) ) ? ; Ok ( UnidirectionalChannelPath { dst_chain_id , src_chain_id : src_chain . id ( ) , src_channel_id : e . channel_id ( ) . clone ( ) , src_port_id : e . port_id ( ) . clone ( ) , } . into ( ) ) }
Build the object associated with the given [`CloseInit`] event.
Build the object associated with the given [ ` CloseInit ` ] event .
e
&CloseInit
src_chain
&dyn ChainHandle
e
&CloseInit
src_chain
&dyn ChainHandle