Code mapping utility types and traits.
This library provides essentials types and trait to locate syntax elements.
Spandescribes 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 aSpanwith a file identifierFto 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.