tasm_lib

Macro field

Source
macro_rules! field {
    { $o : ident :: $e : ident } => { ... };
    { $o : ident :: $e : expr } => { ... };
}
Expand description

Convenience macro, so that we don’t have to write

let field_f = <StructWithNamedFields as TasmObject>::get_field!("f");
let field_0 = <StructWithUnnamedFields as TasmObject>::get_field!("field_0");

but instead

let field_f = field!(StructWithNamedFields::f);
let field_0 = field!(StructWithUnnamedFields::0);

.

Limitations The type descriptor cannot have generic type arguments. To get around this, define a new type via type Custom = Generic<T> and use that instead.