/*
* call-seq:
* dvector.mul!(number) -> dvector
* dvector.mul!(other) -> dvector
*
* When argument is a number, each entry x in _dvector_ is replaced by x * _number_.
* When argument is a vector, each entry x in _dvector_ is replaced by x *
* the corresponding entry in the _other_ vector.
*
* a = Dvector[ 11, -5, 2 ]
* a.mul!(3) -> Dvector[ 33, -15, 6 ]
* a -> Dvector[ 33, -15, 6 ]
* a = Dvector[ 11, -5, 2 ]
* b = Dvector[ 7, 4, -10 ]
* a.mul!(b) -> Dvector[ 77, -20, -20 ]
* a -> Dvector[ 77, -20, -20 ]
*/
VALUE dvector_mul_bang(VALUE ary, VALUE arg) {