range-ify reader
Reader is now a range. Scanner still depends on a lot of non-range bits, though. Going to eliminate those.
This is very much a WIP.
Next: eliminate SliceBuilder.
Codecov Report
Merging #242 (2cd1fca) into master (88eaf87) will decrease coverage by
0.20%. The diff coverage is98.87%.
@@ Coverage Diff @@
## master #242 +/- ##
==========================================
- Coverage 95.29% 95.08% -0.21%
==========================================
Files 28 28
Lines 4080 3947 -133
==========================================
- Hits 3888 3753 -135
- Misses 192 194 +2
| Impacted Files | Coverage Δ | |
|---|---|---|
| source/dyaml/test/reader.d | 75.00% <0.00%> (ø) |
|
| source/dyaml/scanner.d | 98.95% <98.96%> (-0.53%) |
:arrow_down: |
| source/dyaml/loader.d | 90.27% <100.00%> (ø) |
|
| source/dyaml/reader.d | 97.65% <100.00%> (-0.80%) |
:arrow_down: |
| source/dyaml/test/tokens.d | 100.00% <100.00%> (ø) |
|
| source/dyaml/token.d | 100.00% <100.00%> (ø) |
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact),ø = not affected,? = missing dataPowered by Codecov. Last update 88eaf87...2cd1fca. Read the comment docs.
Hey @Herringway what's left to be done?
IIRC it does a lot more copying than it really needs to and ends up suffering a performance penalty for it, so I can't recommend merging it as-is. I'd like to return to this someday but I haven't had the time for it lately