DocumentSymbols provider should handle modules without a name #179
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.
The DocumentSymbols provider should be able to handle a variety of compilation errors so that it can be useful while debugging the compilation errors. The main problem was that the
extract_symbol/2
clause that handleddefmodule
anddefprotocol
was overly restrictive in the pattern match that it did. So I've changed it to match all the possible AST variations (although some may still raise an exception within the clause, but this prevents bad data from propagating).MISSING_MODULE_NAME
was returned since a non-empty name is required by the Language Server Protocol.