| 58 | |
| 59 | template<class IntType> |
| 60 | inline IntType |
| 61 | PowOps::pow(IntType x) const { |
| 62 | int m = n; |
| 63 | IntType p = 1; |
| 64 | do { |
| 65 | if (even(m)) { |
| 66 | x *= x; m >>= 1; |
| 67 | } else { |
| 68 | p *= x; m--; |
| 69 | } |
| 70 | } while (m > 0); |
| 71 | return p; |
| 72 | } |
| 73 | |
| 74 | inline int |
| 75 | PowOps::tpow(int _x) const { |
no outgoing calls
no test coverage detected