Conditional Compilation

import numba as nb

op = '+'

def f(a, b):
    if op=='+': return a+b
    if op=='*': return a*b

def F(operaton):
    global op;
    op = operaton
    _ = nb.njit(f)
    _(0, 0)
    return _

add = F('+')
mul = F('*')

print('2+3', add(2,3))
print('2*3', mul(2,3))