/** * ATOI optimized for non-exponential integers * @param str * @returns */ export function atoi(srcStart: usize, srcEnd: usize): T { // @ts-ignore: type let val: T = 0; if (isSigned()) { if (load(srcStart) == 45) { srcStart += 2; while (srcStart < srcEnd) { // @ts-ignore: type val = (val * 10 + (load(srcStart) - 48)) as T; srcStart += 2; } return -val as T; } else { while (srcStart < srcEnd) { // @ts-ignore: type val = (val * 10 + (load(srcStart) - 48)) as T; srcStart += 2; } return val as T; } } else { while (srcStart < srcEnd) { // @ts-ignore: type val = (val * 10 + (load(srcStart) - 48)) as T; srcStart += 2; } return val as T; } }