mod method

MathValue mod(
  1. dynamic r
)

Implementation

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