Consumes the token stream until the matching closing delimiter
Consumes the token stream until the next non-trivia token
Enters a toplevel symbol such as class, trait or object
Returns a name and position for the current identifier token
Returns position of the current token
Consume token stream like "a.b.c" and return List(a, b, c)
Custom parser that extracts toplevel members from a Scala source file.
Example input:
emits the following symbols: com/zoo/Animal# and com/zoo/Park. The inner classes Animal.Dog and Park.Bench are ignored.
This class exists for performance reasons. The ScalaMtags indexer provides the same functionality but it is much slower. Performance is important because toplevel symbol indexing is on a critical path when users import a new project.