• + 1 comment

    I ended up with the following:

    template <bool digit, bool...digits>
    int reversed_binary_value()
    {
        return digit + (reversed_binary_value<digits...>() << 1);
    }
    
    template<>
    int reversed_binary_value<true>()
    {
        return 1;
    }
    
    template<>
    int reversed_binary_value<false>()
    {
        return 0;
    }