hare

[hare] The Hare programming language
git clone https://git.torresjrjr.com/hare.git
Log | Files | Refs | README | LICENSE

u64tos.ha (420B)


      1 // SPDX-License-Identifier: MPL-2.0
      2 // (c) Hare authors <https://harelang.org>
      3 
      4 def U64_BUFSZ = 20;
      5 
      6 fn u64tos(buf: []u8, u: u64) str = {
      7 	let sl = buf[..0];
      8 	if (u == 0) {
      9 		static append(sl, '0')!;
     10 	};
     11 	for (u > 0) {
     12 		static append(sl, (u % 10): u8 + '0')!;
     13 		u /= 10;
     14 	};
     15 	for (let s = 0z, e = len(sl) - 1; s < e) {
     16 		let tmp = sl[s];
     17 		sl[s] = sl[e];
     18 		sl[e] = tmp;
     19 		s += 1;
     20 		e -= 1;
     21 	};
     22 	return *(&sl: *str);
     23 };