authorgravatar for quae@daurnimator.comdaurnimator <quae@daurnimator.com> 2019-05-20 23:22:58+10:00
committergravatar for quae@daurnimator.comdaurnimator <quae@daurnimator.com> 2019-06-10 14:39:40+10:00
logebedc99ac1148c8d3465ad2338d3db142e57579f
treed2c3abedd92fcdeb1c9c6189687f701dfdf0f7b3
parent5017a1d895847df6cc02dc4bedd02aa341177171
signaturelock-open Commit is signed but in an unrecognized format.

std: add math.isPowerOfTwo


1 files changed, 5 insertions(+), 0 deletions(-)

std/math.zig+5
......@@ -680,6 +680,11 @@ pub fn alignCast(comptime alignment: u29, ptr: var) AlignCastError!@typeOf(@alig
680680 return @alignCast(alignment, ptr);
681681}
682682
683pub fn isPowerOfTwo(v: var) bool {
684 assert(v != 0);
685 return (v & (v - 1)) == 0;
686}
687
683688pub fn floorPowerOfTwo(comptime T: type, value: T) T {
684689 var x = value;
685690