Don't use global mutable state for member completion
Summary:
Previously, we would update several mutable refs whilst inspecting the TAST, compute partial autocomplete results, and only process them later. This was error prone as it was easy to miss some refs.
Instead, compute member completion results as soon as we find the relevant point in the TAST, and don't use the mutable refs.
Reviewed By: hgoldstein
Differential Revision:
D32662299
fbshipit-source-id:
fc2ed1a0ba17a74139288525880bae0c0d3fa105