pub fn invert(self) -> CmpOp {
        use op::CmpOp::*;
        match self {
            EQ => NE,
            NE => EQ,

            FOEQ => FUNE,
            FUNE => FOEQ,

            FUGE => FOLT,
            FOLT => FUGE,

            FUNO => FORD,
            FORD => FUNO,

            UGT => ULE,
            ULE => UGT,

            FUGT => FOLE,
            FOLE => FUGT,

            SGE => SLT,
            SLT => SGE,

            FOGE => FULT,
            FULT => FOGE,

            SGT => SLE,
            SLE => SGT,

            FOGT => FULE,
            FULE => FOGT,

            UGE => ULT,
            ULT => UGE,

            FUEQ => FONE,
            FONE => FUEQ,

            FFALSE => FTRUE,
            FTRUE => FFALSE
        }
    }
/// returns the CmpOp X for CmpOp Y, such that (a Y b) is equivalent to NOT(a X b)
returns the CmpOp X for CmpOp Y, such that (a Y b) is equivalent to NOT(a X b)
returns the CmpOp X for CmpOp Y such that ( a Y b ) is equivalent to NOT ( a X b )
pub fn invert(self) -> CmpOp {
        use op::CmpOp::*;
        match self {
            EQ => NE,
            NE => EQ,
            FOEQ => FUNE,
            FUNE => FOEQ,
            FUGE => FOLT,
            FOLT => FUGE,
            FUNO => FORD,
            FORD => FUNO,
            UGT => ULE,
            ULE => UGT,
            FUGT => FOLE,
            FOLE => FUGT,
            SGE => SLT,
            SLT => SGE,
            FOGE => FULT,
            FULT => FOGE,
            SGT => SLE,
            SLE => SGT,
            FOGT => FULE,
            FULE => FOGT,
            UGE => ULT,
            ULT => UGE,
            FUEQ => FONE,
            FONE => FUEQ,
            FFALSE => FTRUE,
            FTRUE => FFALSE
        }
    }
pub fn invert ( self ) -> CmpOp { use op :: CmpOp :: * ; match self { EQ => NE , NE => EQ , FOEQ => FUNE , FUNE => FOEQ , FUGE => FOLT , FOLT => FUGE , FUNO => FORD , FORD => FUNO , UGT => ULE , ULE => UGT , FUGT => FOLE , FOLE => FUGT , SGE => SLT , SLT => SGE , FOGE => FULT , FULT => FOGE , SGT => SLE , SLE => SGT , FOGT => FULE , FULE => FOGT , UGE => ULT , ULT => UGE , FUEQ => FONE , FONE => FUEQ , FFALSE => FTRUE , FTRUE => FFALSE } }
returns the CmpOp X for CmpOp Y, such that (a Y b) is equivalent to NOT(a X b)
returns the CmpOp X for CmpOp Y such that ( a Y b ) is equivalent to NOT ( a X b )
self
self