Skip to content

Commit

Permalink
Split out spans into a new module
Browse files Browse the repository at this point in the history
The span iterators and tests took up a significant portion of the
syntax module but were fairly self-contained.

In addition, the Span type was an informal

    (usize, std::ops::Range<usize>)

which was a bit tricky to deal with:

* the type was long to write out for all producers/consumers
* std::ops::Range<usize> does not implement Copy

Plus we don't end up using any Range methods except its Ord/PartialOrd
implementations.

Given its first-class usage for diagnostics and selections, it seems
appropriate to separate it into its own struct type and module.
  • Loading branch information
the-mikedavis committed Sep 22, 2022
1 parent 3d1af5f commit a142391
Show file tree
Hide file tree
Showing 5 changed files with 564 additions and 475 deletions.
Loading

0 comments on commit a142391

Please sign in to comment.