{"version":3,"file":"range.mjs","names":[],"sources":["../../src/number/range.ts"],"sourcesContent":["/**\n * Creates an array of numbers progressing from start up to, but not including, end.\n * If step is negative, the array will be in descending order.\n *\n * @param start - The start of the range\n * @param end - The end of the range (not included)\n * @param step - The value to increment or decrement by (default: 1)\n * @returns Returns the range of numbers\n *\n * @example\n * range(0, 5) // => [0, 1, 2, 3, 4]\n * range(0, 10, 2) // => [0, 2, 4, 6, 8]\n * range(5, 0, -1) // => [5, 4, 3, 2, 1]\n */\nexport function range(start: number, end: number, step: number = 1): number[] {\n  if (step === 0) {\n    throw new Error('step cannot be zero');\n  }\n\n  const result: number[] = [];\n\n  if (step > 0) {\n    for (let i = start; i < end; i += step) {\n      result.push(i);\n    }\n  } else {\n    for (let i = start; i > end; i += step) {\n      result.push(i);\n    }\n  }\n\n  return result;\n}\n"],"mappings":";;;;;;;;;;;;;;;AAcA,SAAgB,MAAM,OAAe,KAAa,OAAe,GAAa;CAC5E,IAAI,SAAS,GACX,MAAM,IAAI,MAAM,qBAAqB;CAGvC,MAAM,SAAmB,CAAC;CAE1B,IAAI,OAAO,GACT,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,KAAK,MAChC,OAAO,KAAK,CAAC;MAGf,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,KAAK,MAChC,OAAO,KAAK,CAAC;CAIjB,OAAO;AACT"}