# `strcursor` **Note**: This is something of a work-in-progress. It has tests, but hasn't been exhaustively vetted. This crate provides a "cursor" type for string slices. It provides the ability to safely seek back and forth through a string without worrying about producing invalid UTF-8 sequences, or splitting grapheme clusters. In addition, it provides types to represent single grapheme clusters (`Gc`) and `GcBuf`) as distinct from arbitrary string slices. See the `StrCursor` type for details. **Links** * [Latest Release](https://crates.io/crates/strcursor/) * [Latest Docs](https://docs.rs/strcursor/%2A/strcursor/index.html) * [Repository](https://github.com/DanielKeep/strcursor) ## Compatibility `strcursor` is currently supported on `rustc` version 1.1.0 and higher. * `rustc` < 1.4 will use a larger, less space-efficient implementation of `GcBuf`; rather than being the same size as `Box`, it will be the same size as `String`. * `rustc` < 1.1 is not supported, due to a mysterious compiler crash. ## License Licensed under either of * MIT license (see [LICENSE](LICENSE) or ) * Apache License, Version 2.0 (see [LICENSE](LICENSE) or ) at your option. ### Contribution Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you shall be dual licensed as above, without any additional terms or conditions.