use crate::authoring::*;
fn fwd(_op: &Op, _ctx: &dyn Context, operands: &mut dyn CoordinateSet) -> usize {
operands.len()
}
fn inv(_op: &Op, _ctx: &dyn Context, operands: &mut dyn CoordinateSet) -> usize {
operands.len()
}
#[rustfmt::skip]
pub const GAMUT: [OpParameter; 0] = [
];
pub fn new(parameters: &RawParameters, _ctx: &dyn Context) -> Result<Op, Error> {
Op::basic(parameters, InnerOp(fwd), Some(InnerOp(inv)), &GAMUT)
}
#[cfg(test)]
mod tests {
use super::*;
const GDA94: Coor4D = Coor4D([-4052051.7643, 4212836.2017, -2545106.0245, 0.0]);
#[test]
fn no_change() -> Result<(), Error> {
let mut ctx = Minimal::default();
let op = ctx.op("noop")?;
let mut operands = [GDA94];
ctx.apply(op, Fwd, &mut operands)?;
assert_eq!(operands[0], GDA94);
ctx.apply(op, Inv, &mut operands)?;
assert_eq!(operands[0], GDA94);
Ok(())
}
}