Skip to main content

mv

Macro mv 

Source
macro_rules! mv {
    [] => { ... };
    [ $( $mask:expr => $num:literal $( / $den:literal )? ),+ $(,)? ] => { ... };
    (@den) => { ... };
    (@den $den:literal) => { ... };
}
Expand description

Construct an Mv from literal (mask, coefficient) pairs.

§Syntax

  • mv![] — zero multivector
  • mv![mask => integer, ...] — integer coefficients
  • mv![mask => num/den, ...] — rational coefficients

§Examples

let v = mv![0b001 => 3, 0b010 => 4];
let p = mv![0b01 => 1/2, 0b10 => 1/2];