Skip to content

Commit 7d60f12

Browse files
save file
1 parent e594994 commit 7d60f12

1 file changed

Lines changed: 62 additions & 54 deletions

File tree

npm/esrecurse-browser/scripts/esrecurse-browser.html

Lines changed: 62 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ <h3>esrecurse-browser</h3>
162162

163163

164164
await install();
165-
await package_json();
165+
//await package_json();
166166
await install_rollup();
167167

168168
await Promise.all(['esm','cjs'].map(async type=>{
@@ -181,61 +181,8 @@ <h3>esrecurse-browser</h3>
181181

182182
}));
183183

184-
185-
186-
187-
188-
189-
190-
191-
192-
var {espree} = await import('https://libs.ext-code.com/external/js/espree/espree.m.js');
193-
var {estraverse} = await import('https://libs.ext-code.com/external/js/estraverse/estraverse.m.js');
194-
var {scope} = await import(url);
195-
196-
var code = `
197-
198-
function fn(){
199-
200-
console.log('123');
201-
202-
}//fn
203-
204-
`;
205-
206-
207-
const options = {
208-
ecmaVersion: 2022,
209-
sourceType: "module",
210-
};
211-
212-
const ast = espree.parse(code, { range: true, ...options });
213-
const scopeManager = scope.analyze(ast, options);
214-
215-
var currentScope = scopeManager.acquire(ast); // global scope
216-
217-
estraverse.traverse(ast, {
218-
enter(node, parent) {
219-
// do stuff
220-
221-
if (/Function/.test(node.type)) {
222-
currentScope = scopeManager.acquire(node); // get current function scope
223-
}
224-
},
225-
leave(node, parent) {
226-
if (/Function/.test(node.type)) {
227-
currentScope = currentScope.upper; // set to parent scope
228-
}
229-
230-
// do stuff
231-
},
232-
});
233-
234-
235-
236184
console.log('done.');
237185

238-
239186
}//start
240187

241188

@@ -342,6 +289,67 @@ <h3>esrecurse-browser</h3>
342289
}//readfile
343290

344291

292+
293+
//:
294+
295+
296+
async function test({espree,estraverse,scope}){
297+
298+
var code = `
299+
300+
function fn(){
301+
302+
console.log('123');
303+
304+
}//fn
305+
306+
`;
307+
308+
const options = {
309+
ecmaVersion: 2022,
310+
sourceType: "module",
311+
};
312+
313+
const ast = espree.parse(code, { range: true, ...options });
314+
const scopeManager = scope.analyze(ast, options);
315+
316+
var currentScope = scopeManager.acquire(ast); // global scope
317+
318+
estraverse.traverse(ast, {
319+
enter(node, parent) {
320+
// do stuff
321+
322+
if (/Function/.test(node.type)) {
323+
currentScope = scopeManager.acquire(node); // get current function scope
324+
}
325+
},
326+
leave(node, parent) {
327+
if (/Function/.test(node.type)) {
328+
currentScope = currentScope.upper; // set to parent scope
329+
}
330+
331+
// do stuff
332+
},
333+
});
334+
335+
}//test
336+
337+
338+
test.esm = async function(url){
339+
340+
var {espree} = await import('https://libs.ext-code.com/external/js/espree/espree.m.js');
341+
var {estraverse} = await import('https://libs.ext-code.com/external/js/estraverse/estraverse.m.js');
342+
var {scope} = await import(url);
343+
344+
test({espree,estraverse,scope});
345+
346+
}//test
347+
348+
349+
test.cjs = async function(url){
350+
}//cjs
351+
352+
345353
//:
346354

347355

0 commit comments

Comments
 (0)