/// Wrapping multiplication of a scalar T to a [`PrimitiveArray`] of type T.
/// It do nothing if the result overflows.
///
/// # Examples
/// ```
/// use arrow2::compute::arithmetics::basic::wrapping_mul_scalar;
/// use arrow2::array::Int8Array;
///
/// let a = Int8Array::from(&[None, Some(0x10)]);
/// let result = wrapping_mul_scalar(&a, &0x10);
/// let expected = Int8Array::from(&[None, Some(0)]);
/// assert_eq!(result, expected);
/// ```
Wrapping multiplication of a scalar T to a [`PrimitiveArray`] of type T.
It do nothing if the result overflows.
Wrapping multiplication of a scalar T to a [ ` PrimitiveArray ` ] of type T . It do nothing if the result overflows .
pub fn wrapping_mul_scalar<T>(lhs: &PrimitiveArray<T>, rhs: &T) -> PrimitiveArray<T>
where
    T: NativeType + WrappingMul<Output = T>,
{
    unary(lhs, |a| a.wrapping_mul(rhs), lhs.data_type().clone())
}
pub fn wrapping_mul_scalar < T > ( lhs : & PrimitiveArray < T > , rhs : & T ) -> PrimitiveArray < T > where T : NativeType + WrappingMul < Output = T > , { unary ( lhs , | a | a . wrapping_mul ( rhs ) , lhs . data_type ( ) . clone ( ) ) }
Wrapping multiplication of a scalar T to a [`PrimitiveArray`] of type T.
It do nothing if the result overflows.
Wrapping multiplication of a scalar T to a [ ` PrimitiveArray ` ] of type T . It do nothing if the result overflows .
lhs
&PrimitiveArray<T>
rhs
&T
examples
```
use arrow2::compute::arithmetics::basic::wrapping_mul_scalar;
use arrow2::array::Int8Array.

let a = Int8Array::from(&[None, Some(0x10)]);
let result = wrapping_mul_scalar(&a, &0x10);
let expected = Int8Array::from(&[None, Some(0)]);
assert_eq!(result, expected);
```
` ` ` use arrow2 :: compute :: arithmetics :: basic :: wrapping_mul_scalar ; use arrow2 :: array :: Int8Array . let a = Int8Array :: from ( & [ None Some ( 0x10 ) ] ) ; let result = wrapping_mul_scalar ( &a &0x10 ) ; let expected = Int8Array :: from ( & [ None Some ( 0 ) ] ) ; assert_eq! ( result expected ) ; ` ` `