constr

Macro constr 

Source
macro_rules! constr {
    ($ix:expr $(,)?) => { ... };
    ($ix:expr $(, $field:expr)+ $(,)?) => { ... };
}
Expand description

A handy macro for constructing PlutusData constructors from a known set of fields. The macro is variadic. The first argument refers to the constructor variant index, while other arguments indicates the constructor fields.

use cardano_sdk::{PlutusData, constr};
assert_eq!(
  constr!(1),
  PlutusData::constr::<PlutusData>(1, []),
);
use cardano_sdk::{PlutusData, constr};
assert_eq!(
  constr!(0, b"foo"),
  PlutusData::constr(0, [b"foo"]),
);
use cardano_sdk::{PlutusData, constr};
assert_eq!(
  constr!(0, 42, b"foo"),
  PlutusData::constr::<PlutusData>(0, [42.into(), b"foo".into()]),
);