mul method
Implementation
MathValue mul( r ){
type();
if( r is MathValue ){
if( r._type == ClipMath.valueTypeComplex ){
if( _type == ClipMath.valueTypeComplex ) return complexToValue( _c.mul( r._c ) );
if( _type == ClipMath.valueTypeFract ) return fractToValue ( _f.mul( r._c.toFloat() ) );
return timeToValue( _t.mul( r._c.toFloat() ) );
}
if( r._type == ClipMath.valueTypeFract ){
if( _type == ClipMath.valueTypeComplex ) return complexToValue( _c.mul( r._f.toFloat() ) );
if( _type == ClipMath.valueTypeFract ) return fractToValue ( _f.mul( r._f ) );
return timeToValue( _t.mul( r._f.toFloat() ) );
}
if( _type == ClipMath.valueTypeComplex ) return complexToValue( _c.mul( r._t.toFloat() ) );
if( _type == ClipMath.valueTypeFract ) return fractToValue ( _f.mul( r._t.toFloat() ) );
return timeToValue( _t.mul( r._t ) );
}
if( _type == ClipMath.valueTypeComplex ) return complexToValue( _c.mul( ClipMath.toDouble(r) ) );
if( _type == ClipMath.valueTypeFract ) return fractToValue ( _f.mul( ClipMath.toDouble(r) ) );
return timeToValue( _t.mul( ClipMath.toDouble(r) ) );
}