[]Function sauron::prelude::mt_dom::apply_patches::apply_patches

pub fn apply_patches<NS, TAG, ATT, VAL, EVENT, MSG>(
    root_node: &mut Node<NS, TAG, ATT, VAL, EVENT, MSG>,
    patches: &[Patch<'a, NS, TAG, ATT, VAL, EVENT, MSG>]
) where
    ATT: Clone + Debug + PartialEq<ATT>,
    NS: Clone + Debug,
    TAG: Clone + Debug,
    VAL: Clone + Debug

had to find the node each time, since rust does not allow multiple mutable borrows ISSUE: once a destructive patch such as RemoveChildren, InsertNode, ReplaceNode is applied the Nodeidx is not synch with the root_node anymore.

To minimize this issue, destructive patches is applied last. It doesn't elimiate the problem completely, and it will arise when there are multiple destructive patch.