feat(engine): support go to definition when function is called via __MODULE__
#261
+48
−0
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR add support for function calls using
__MODULE__special form, like:It was not working, because Forge parses
__MODULE__as{:var, ~c"__MODULE__"}, not as an atom/module. Because of that, a special handling case just for{:var, ~c"__MODULE__"}needed to be added.Recognizing
__MODULE__as:var,while might be semantically incorrect, does not seem to be a problem in scope of definition finding.The PR also adds an additional test, making sure that a popular formula of using
alias __MODULE__in the module is correctly handled by the Engine.