fn merge<'a>(
    simple: Simple,
    conds: (Option<Conditions>, Option<Prefixes>),
) -> Instruction {
    let (cond, prefix) = conds;
    match (cond, prefix) {
        (None, None) => Instruction::Simple(simple),
        (Some(c), p) => Instruction::Complex(Complex {
            conditions: Some(c),
            prefix: p,
            instruction: simple
        }),
        (None, p) => Instruction::Complex(Complex {
            conditions: None,
            prefix: p,
            instruction: simple
        }),
    }
}
/// Merges a simple instruction with conditions into a Complex instruction.
Merges a simple instruction with conditions into a Complex instruction.
Merges a simple instruction with conditions into a Complex instruction .
fn merge<'a>(
    simple: Simple,
    conds: (Option<Conditions>, Option<Prefixes>),
) -> Instruction {
    let (cond, prefix) = conds;
    match (cond, prefix) {
        (None, None) => Instruction::Simple(simple),
        (Some(c), p) => Instruction::Complex(Complex {
            conditions: Some(c),
            prefix: p,
            instruction: simple
        }),
        (None, p) => Instruction::Complex(Complex {
            conditions: None,
            prefix: p,
            instruction: simple
        }),
    }
}
fn merge < ' a > ( simple : Simple , conds : ( Option < Conditions > , Option < Prefixes > ) , ) -> Instruction { let ( cond , prefix ) = conds ; match ( cond , prefix ) { ( None , None ) => Instruction :: Simple ( simple ) , ( Some ( c ) , p ) => Instruction :: Complex ( Complex { conditions : Some ( c ) , prefix : p , instruction : simple } ) , ( None , p ) => Instruction :: Complex ( Complex { conditions : None , prefix : p , instruction : simple } ) , } }
Merges a simple instruction with conditions into a Complex instruction.
Merges a simple instruction with conditions into a Complex instruction .
simple
Simple
conds
(Option<Conditions>, Option<Prefixes>)
simple
Simple
conds
(Option<Conditions>, Option<Prefixes>)