Macro opcode_gen

Source
opcode_gen!() { /* proc-macro */ }
Expand description

Generates opcode from bit field enums

§Example

use opcode_macros::opcode_gen;
opcode_gen! {
    for BPF_* in ebpf_consts as u8 {
        [
            [BPF_ALU, BPF_ALU64],
            [BPF_K, BPF_X],
            [BPF_ADD, BPF_SUB],
        ]
        [
            [BPF_JMP, BPF_JMP32],
            [BPF_K, BPF_X],
            [BPF_JLE, BPF_JLT],
        ]
    }
}
assert_eq!(BPF_ALU64_K_ADD, BPF_ALU64 | BPF_K | BPF_ADD);
assert_eq!(BPF_JMP_X_JLT, BPF_JMP | BPF_X | BPF_JLT);