capstone-rust / capstone-rs

high-level Capstone system bindings for Rust
217 stars 75 forks source link

ArmOperand "access" member of type Option<RegAccessType> is missing #97

Closed flipnut closed 2 weeks ago

flipnut commented 3 years ago

Capstone's C types cs_arm_op and cs_x86_op etc. have a member uint8_t access, that provides info about the operand being read or written to by the instruction. In the rust world, the related struct X86Operand has the member pub access: Option<RegAccessType>,. Howevery, for ArmOperand the member is missing.

Unfortunately, I am not familiar with the semi-automated translation process of c types to rust types in capstone-rust. With some guidance I am happy to help where I can to get this fixed.

enjhnsn2 commented 3 years ago

Has there been any progress on this issue?

tmfink commented 3 years ago

Sorry for the late reply. The Rust types are "bespoke" and written by hand. :sweat_smile:

If you are interested in contributing the feature, take a look at RegAccessType and the use for X86:

You will also need to update the tests in capstone-rs/src/test.rs.

Let me know if you have any questions.