4#ifndef TETL_MATH_IPOW_HPP
5#define TETL_MATH_IPOW_HPP
7#include <etl/_concepts/integral.hpp>
11template <integral Int>
12[[nodiscard]]
constexpr auto ipow(Int base, Int exponent)
noexcept -> Int
15 for (
auto i = Int(0); i < exponent; ++i) {
22[[nodiscard]]
constexpr auto ipow(
decltype(Base) exponent)
noexcept ->
decltype(Base)
24 using Int =
decltype(Base);
26 if constexpr (Base == Int(2)) {
27 return static_cast<Int>(Int(1) << exponent);
29 return ipow(Base, exponent);
Definition adjacent_find.hpp:9
constexpr auto ipow(Int base, Int exponent) noexcept -> Int
Definition ipow.hpp:12
constexpr auto ipow(decltype(Base) exponent) noexcept -> decltype(Base)
Definition ipow.hpp:22