mul method

MathValue mul(
  1. dynamic r
)

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) ) );
}