Обходной путь для частичной специализации шаблона функции?

Рассмотрим следующую метафункцию для целочисленного значения pow (это всего лишь пример):

class Meta
{
    template static constexpr T ipow(T x)
    {
        return (N > 0) ? (x*ipow(x)) 
                       : ((N < 0) ? (static_cast(1)/ipow(x)) 
                                  : (1))
    }
};

Как написать условие остановки для такой функции?

Ответы на вопрос(3)

Ваш ответ на вопрос