arch_translate_data

Macro arch_translate_data 

Source
macro_rules! arch_translate_data {
    () => { ... };
    (BidiFrom < $type_name:ident > { $($field:ident),+ $(,)? } $($token:tt)*) => { ... };
    (TryFrom64 < $type_name:ident > { $($field:ident),+ $(,)? } $($token:tt)*) => { ... };
    (From32 < $type_name:ident > { $($field:ident),+ $(,)? } $($token:tt)*) => { ... };
}
Expand description

Implement From/TryFrom between 2 uapi struct of different ABI.

This defined 3 constructs:

  • TryFrom64 transform a 64 bits uapi struct into a 32 bits one
  • From32 transform a 32 bits uapi struct into a 64 bits one
  • BidiFrom implements both of these operations