MCPcopy
hub / github.com/vuejs/core / getPositionInCode

Function getPositionInCode

packages/compiler-sfc/__tests__/utils.ts:50–75  ·  view source on GitHub ↗
(
  code: string,
  token: string,
  expectName: string | boolean = false,
)

Source from the content-addressed store, hash-verified

48}
49
50export function getPositionInCode(
51 code: string,
52 token: string,
53 expectName: string | boolean = false,
54): Pos {
55 const generatedOffset = code.indexOf(token)
56 let line = 1
57 let lastNewLinePos = -1
58 for (let i = 0; i < generatedOffset; i++) {
59 if (code.charCodeAt(i) === 10 /* newline char code */) {
60 line++
61 lastNewLinePos = i
62 }
63 }
64 const res: Pos = {
65 line,
66 column:
67 lastNewLinePos === -1
68 ? generatedOffset
69 : generatedOffset - lastNewLinePos - 1,
70 }
71 if (expectName) {
72 res.name = typeof expectName === 'string' ? expectName : token
73 }
74 return res
75}

Callers 2

Calls 1

indexOfMethod · 0.80

Tested by

no test coverage detected