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