def operator_pow(size): a = Array(size, 'int32') b = Array(size, 'int32') for i in range(size): a[i] = nb_types.int32(i + 1) b[i] = nb_types.int32(size - i) return operator.pow(a, b)
def operator_mod(size): a = Array(size, 'int32') b = Array(size, 'int32') for i in range(size): a[i] = nb_types.int32(i * 123) b[i] = nb_types.int32(7) return operator.mod(a, b)
def operator_truediv(size): a = Array(size, 'int32') b = Array(size, 'int32') for i in range(size): a[i] = nb_types.int32(i + 10) b[i] = nb_types.int32(i + 3) return operator.truediv(a, b)
def operator_and_bw(size): a = Array(size, 'int32') b = Array(size, 'int32') for i in range(size): a[i] = nb_types.int32(i) b[i] = nb_types.int32(size - i - 1) return operator.and_(a, b)
def operator_lshift(size): a = Array(size, 'int32') b = Array(size, 'int32') for i in range(size): a[i] = nb_types.int32(i) b[i] = nb_types.int32(size - i - 1) return operator.lshift(a, b)
def operator_truediv2(size): a = Array(size, 'double') b = Array(size, 'double') for i in range(size): a[i] = nb_types.double(i + 10) b[i] = nb_types.double(i + 3) return operator.truediv(a, b)
def operator_ifloordiv(size): a = Array(size, 'int32') b = Array(size, 'int32') for i in range(size): a[i] = nb_types.int32(i + 10) b[i] = nb_types.int32(i + 3) operator.ifloordiv(a, b) return a
def operator_ifloordiv2(size): a = Array(size, 'double') b = Array(size, 'double') for i in range(size): a[i] = nb_types.double(i + 10) b[i] = nb_types.double(i + 3) operator.ifloordiv(a, b) return a
def operator_iand(size): a = Array(size, 'int32') b = Array(size, 'int32') for i in range(size): a[i] = nb_types.int32(i) b[i] = nb_types.int32(size - i - 1) operator.iand(a, b) return a
def array_noreturn(size): a = Array(size, types.float64) b = Array(size, types.float64) c = Array(size, types.float64) for i in range(size): a[i] = b[i] = c[i] = i + 3.0 s = 0.0 for i in range(size): s += a[i] + b[i] + c[i] - a[i] * b[i] return s
def array_return(size): printf("entering array_return(%i)\n", size) a = Array(size, types.float64) b = Array(size, types.float64) for i in range(size): a[i] = float(i) b[i] = float(size - i - 1) if size % 2: c = a else: c = b printf("returning array with length %i\n", len(c)) return c
def operator_neg(size): a = Array(size, 'int32') for i in range(size): a[i] = nb_types.int32(i) return operator.neg(a)
def operator_countOf(size, fill_value, b): a = Array(size, 'int64') for i in range(size): a[i] = fill_value return operator.countOf(a, b)
def operator_is_not2(size, v): a = Array(size, 'int32') a.fill(v) b = Array(size, 'int32') b.fill(v) return a is not b
def operator_is(size, v): a = Array(size, 'int32') a.fill(v) return a is a
def operator_not_in(size, v): a = Array(size, 'int32') for i in range(size): a[i] = nb_types.int32(i) return v not in a
def operator_ge_array(size, v): a = Array(size, 'int32') for i in range(size): a[i] = nb_types.int32(i) return a >= a
def ndarray_mean_empty_int(size): a = Array(size, 'int32') return a.mean()
def ndarray_min(size, v): a = Array(size, 'double') a.fill(v) return a.min()
def ndarray_mean_empty_float(size): a = Array(size, 'float64') return a.mean()
def operator_abs(size): a = Array(size, 'int32') for i in range(size): a[i] = nb_types.int32(-i) return abs(a)
def ndarray_min_empty(size): a = Array(size, 'int16') return a.min()
def ndarray_min_initial(size, v, initial): a = Array(size, 'double') a.fill(v) return a.min(initial=initial)
def ndarray_sum(size, v): a = Array(size, 'double') a.fill(v) return a.sum()
def array_ptr(size, pos): a = Array(size, np.double) for i in range(size): a[i] = i + 0.0 return a[pos]
def ndarray_prod_initial(size, v, initial): a = Array(size, 'double') a.fill(v) return a.prod(initial=initial)
def array_len(size): a = Array(size, types.float64) return len(a)
def ndarray_max_empty(size): a = Array(size, 'int8') return a.max()
def array_is_null(size): a = Array(size, 'double') return a.is_null()
def ndarray_prod(size, v): a = Array(size, 'double') a.fill(v) return a.prod()