| 1234567891011121314151617181920212223 |
- // checkScopeInfo.js
- module.exports = () => {
- return {
- visitor: {
- Program: {
- exit(programPath) {
- // so that this plugin is always called after the transform-destructuring plugin
- programPath.traverse({
- VariableDeclarator(path) {
- const names = Object.keys(path.getBindingIdentifiers());
- for (const name of names) {
- const b = path.scope.getBinding(name);
- if (!b) {
- throw new Error(`No binding for ${name}`);
- }
- }
- },
- });
- },
- },
- },
- };
- };
|