pub fn fx_by_query_index(&self, query_index: i32) -> Option<Fx> {
        let (index, is_input_fx) = get_index_from_query_index(query_index);
        let fx_chain = if is_input_fx {
            self.input_fx_chain()
        } else {
            self.normal_fx_chain()
        };
        fx_chain.fx_by_index(index)
    }
// It's correct that this returns an optional because the index isn't a stable identifier of an
// FX. The FX could move. So this should do a runtime lookup of the FX and return a stable
// GUID-backed Fx object if an FX exists at that query index.
It's correct that this returns an optional because the index isn't a stable identifier of an
FX. The FX could move. So this should do a runtime lookup of the FX and return a stable
GUID-backed Fx object if an FX exists at that query index.
It ' s correct that this returns an optional because the index isn ' t a stable identifier of an FX . The FX could move . So this should do a runtime lookup of the FX and return a stable GUID - backed Fx object if an FX exists at that query index .
pub fn fx_by_query_index(&self, query_index: i32) -> Option<Fx> {
        let (index, is_input_fx) = get_index_from_query_index(query_index);
        let fx_chain = if is_input_fx {
            self.input_fx_chain()
        } else {
            self.normal_fx_chain()
        };
        fx_chain.fx_by_index(index)
    }
pub fn fx_by_query_index ( & self , query_index : i32 ) -> Option < Fx > { let ( index , is_input_fx ) = get_index_from_query_index ( query_index ) ; let fx_chain = if is_input_fx { self . input_fx_chain ( ) } else { self . normal_fx_chain ( ) } ; fx_chain . fx_by_index ( index ) }
It's correct that this returns an optional because the index isn't a stable identifier of an
FX.
It ' s correct that this returns an optional because the index isn ' t a stable identifier of an FX .
&self
query_index
i32
&self
query_index
i32