mirror of
https://github.com/BurntSushi/ripgrep.git
synced 2025-02-04 06:08:39 +02:00
This feature causes nothing but problems and is frequently broken. The only optimization it was enabling were SIMD optimizations for transcoding. In particular, for UTF-16 transcoding. This is performed by the [`encoding_rs`](https://github.com/hsivonen/encoding_rs) crate, which specifically uses unstable portable SIMD APIs instead of the stable non-portable SIMD APIs. SIMD optimizations that apply to search have long been making use of stable APIs, and are automatically enabled when your target supports them. This is, IMO, the correct user experience and one that `encoding_rs` refuses to support. I'm done dealing with it, so transcoding will only use scalar code until the SIMD optimizations in `encoding_rs` work on stable. (This doesn't mean that `encoding_rs` has to change. This could also be fixed by stabilizing `std::simd`.) Fixes #2748
grep
ripgrep, as a library.
Dual-licensed under MIT or the UNLICENSE.
Documentation
NOTE: This crate isn't ready for wide use yet. Ambitious individuals can probably piece together the parts, but there is no high level documentation describing how all of the pieces fit together.
Usage
Add this to your Cargo.toml
:
[dependencies]
grep = "0.2"
Features
This crate provides a pcre2
feature (disabled by default) which, when
enabled, re-exports the grep-pcre2
crate as an alternative Matcher
implementation to the standard grep-regex
implementation.