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