dillon1000/react

Commit

Avoid generating conflicts w global names

Adds a visitor to collect all the globals that are referenced within the 
function, and then uses this list to avoid synthesizing variables with 
conflicting names. This is used in both RenameVariables (for promoted 
temporaries) and Codegen (for `$` and change variables only, so far, but this 
can be extended in follow-ups).
Browse files
Changed paths10 files
First-parent comparison
M compiler/packages/babel-plugin-react-forget/src/ReactiveScopes/CodegenReactiveFunction.ts ModifiedA compiler/packages/babel-plugin-react-forget/src/ReactiveScopes/CollectReferencedGlobals.ts AddedM compiler/packages/babel-plugin-react-forget/src/ReactiveScopes/RenameVariables.ts ModifiedA compiler/packages/babel-plugin-react-forget/src/__tests__/fixtures/compiler/rename-source-variables-nested-function.expect.md AddedA compiler/packages/babel-plugin-react-forget/src/__tests__/fixtures/compiler/rename-source-variables-nested-function.js AddedA compiler/packages/babel-plugin-react-forget/src/__tests__/fixtures/compiler/rename-source-variables-nested-object-method.expect.md AddedA compiler/packages/babel-plugin-react-forget/src/__tests__/fixtures/compiler/rename-source-variables-nested-object-method.js AddedR compiler/packages/babel-plugin-react-forget/src/__tests__/fixtures/compiler/todo-rename-source-variables.expect.md →compiler/packages/babel-plugin-react-forget/src/__tests__/fixtures/compiler/rename-source-variables.expect.md RenamedR compiler/packages/babel-plugin-react-forget/src/__tests__/fixtures/compiler/todo-rename-source-variables.ts →compiler/packages/babel-plugin-react-forget/src/__tests__/fixtures/compiler/rename-source-variables.ts RenamedM compiler/packages/snap/src/SproutTodoFilter.ts Modified
Patch

Files changed

Rendering syntax-highlighted changes…