MCPcopy Create free account
hub / github.com/beutton/browser-flight-simulator / loopReplacer

Function loopReplacer

packages/core/src/unrollLoops.ts:6–19  ·  view source on GitHub ↗
(
  match: string,
  start: string,
  end: string,
  snippet: string
)

Source from the content-addressed store, hash-verified

4 /#pragma unroll_loop_start\s+for\s*\(\s*int\s+i\s*=\s*(\d+)\s*;\s*i\s*<\s*(\d+)\s*;\s*(?:i\s*\+\+|\+\+\s*i)\s*\)\s*{([\s\S]+?)}\s+#pragma unroll_loop_end/g
5
6function loopReplacer(
7 match: string,
8 start: string,
9 end: string,
10 snippet: string
11): string {
12 let string = ''
13 for (let i = parseInt(start); i < parseInt(end); ++i) {
14 string += snippet
15 .replace(/\[\s*i\s*\]/g, '[' + i + ']')
16 .replace(/UNROLLED_LOOP_INDEX/g, `${i}`)
17 }
18 return string
19}
20
21export function unrollLoops(string: string): string {
22 return string.replace(unrollLoopPattern, loopReplacer)

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected