MCPcopy Create free account
hub / github.com/cst/cst / buildTokenList

Function buildTokenList

src/elementTree.js:157–181  ·  view source on GitHub ↗
(codeTokens: Array<BabylonToken>, code: string)

Source from the content-addressed store, hash-verified

155 * @returns {Array}
156 */
157export function buildTokenList(codeTokens: Array<BabylonToken>, code: string): Array<BabylonToken> {
158 let prevPos = 0;
159 let result = [];
160
161 for (let i = 0; i < codeTokens.length; i++) {
162 let token = processToken(codeTokens[i], code);
163
164 let pos = token.start;
165 if (prevPos !== pos) {
166 let value = code.substring(prevPos, pos);
167 result[result.length] = {
168 type: 'Whitespace',
169 value,
170 sourceCode: value,
171 start: prevPos,
172 end: pos,
173 };
174 }
175 result[result.length] = token;
176
177 prevPos = token.end;
178 }
179
180 return result;
181}
182
183/**
184 * Babylon token types.

Callers 1

_processTokensMethod · 0.90

Calls 1

processTokenFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…