divAndAss method

MathValue divAndAss(
  1. dynamic r
)

Implementation

MathValue divAndAss( r ){
	if( r is MathValue ){
		switch( r._type ){
		case ClipMath.valueTypeComplex:
			switch( type() ){
			case ClipMath.valueTypeComplex: _c.divAndAss( r._c           ); break;
			case ClipMath.valueTypeFract  : _f.divAndAss( r._c.toFloat() ); break;
			case ClipMath.valueTypeTime   : _t.divAndAss( r._c.toFloat() ); break;
			}
			break;
		case ClipMath.valueTypeFract:
			switch( type() ){
			case ClipMath.valueTypeComplex: _c.divAndAss( r._f.toFloat() ); break;
			case ClipMath.valueTypeFract  : _f.divAndAss( r._f           ); break;
			case ClipMath.valueTypeTime   : _t.divAndAss( r._f.toFloat() ); break;
			}
			break;
		case ClipMath.valueTypeTime:
			switch( type() ){
			case ClipMath.valueTypeComplex: _c.divAndAss( r._t.toFloat() ); break;
			case ClipMath.valueTypeFract  : _f.divAndAss( r._t.toFloat() ); break;
			case ClipMath.valueTypeTime   : _t.divAndAss( r._t           ); break;
			}
			break;
		}
	} else {
		switch( type() ){
		case ClipMath.valueTypeComplex: _c.divAndAss( ClipMath.toDouble(r) ); break;
		case ClipMath.valueTypeFract  : _f.divAndAss( ClipMath.toDouble(r) ); break;
		case ClipMath.valueTypeTime   : _t.divAndAss( ClipMath.toDouble(r) ); break;
		}
	}
	return this;
}