39 releases
0.9.2 | Feb 16, 2025 |
---|---|
0.8.2 | Oct 19, 2023 |
0.7.13 | Dec 16, 2022 |
0.7.11 | Oct 19, 2022 |
0.3.2 | Mar 15, 2022 |
#22 in Parser tooling
28,950 downloads per month
Used in 101 crates
(15 directly)
13KB
256 lines
Code mapping utility types and traits.
This library provides essentials types and trait to locate syntax elements.
Span
describes a byte range in a source file. It is very similar toRange<usize>
but is not an iterator and implementsCopy
. It also provides an intuitive API to write lexers and parsers.Location<F>
combines aSpan
with a file identifierF
to pin point a syntactic element in a source file.
The crate integrates well with
codespan-reporting
library
to render beautiful error reports. Enable the reporting
feature to add
dedicated methods to convert a Location
value into a
codespan_reporting::diagnostic::Label
.
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~0–7MB
~35K SLoC