spow

power ( works with vectors )

T
spow
(
T
)
(
in T val
,
size_t k
)
if (
is(typeof(T.init / T.init) == T) &&
is(typeof(T.init * T.init) == T)
)

Examples

import des.math.linear.vector;
assertEq( spow( vec3( 1, 2, 3 ), 3 ), vec3( 1, 8, 27 ) );
foreach( i; 0 .. 16 ) assertEq( spow( 10, i ), 10 ^^ i,
        format( "spow fails (%%s != %%s) with i: %s",  i ) );

Meta