MCPcopy
hub / github.com/vitejs/vite / mapEvalOrigin

Function mapEvalOrigin

packages/vite/src/module-runner/sourcemap/interceptor.ts:239–258  ·  view source on GitHub ↗
(origin: string)

Source from the content-addressed store, hash-verified

237// Parses code generated by FormatEvalOrigin(), a function inside V8:
238// https://code.google.com/p/v8/source/browse/trunk/src/messages.js
239function mapEvalOrigin(origin: string): string {
240 // Most eval() calls are in this format
241 let match = /^eval at ([^(]+) \((.+):(\d+):(\d+)\)$/.exec(origin)
242 if (match) {
243 const position = mapSourcePosition({
244 name: null,
245 source: match[2],
246 line: +match[3],
247 column: +match[4] - 1,
248 })
249 return `eval at ${match[1]} (${position.source}:${position.line}:${position.column + 1})`
250 }
251
252 // Parse nested eval() calls using recursion
253 match = /^eval at ([^(]+) \((.+)\)$/.exec(origin)
254 if (match) return `eval at ${match[1]} (${mapEvalOrigin(match[2])})`
255
256 // Make sure we still return useful information if we didn't find anything
257 return origin
258}
259
260// This is copied almost verbatim from the V8 source code at
261// https://code.google.com/p/v8/source/browse/trunk/src/messages.js. The

Callers 1

wrapCallSiteFunction · 0.85

Calls 1

mapSourcePositionFunction · 0.85

Tested by

no test coverage detected