1
0
mirror of https://github.com/BurntSushi/ripgrep.git synced 2024-12-12 19:18:24 +02:00
ripgrep/crates/core
Andrew Gallant 92c81b1225 core: switch to anyhow
This commit adds `anyhow` as a dependency and switches over to it from
Box<dyn Error>.

It actually looks like I've kept all of my errors rather shallow, such
that we don't get a huge benefit from anyhow at present. But now that
anyhow is in use, I expect to use its "context" feature more going
forward.
2023-11-20 23:51:53 -05:00
..
app.rs ripgrep: disable hyperlinks by default 2023-11-20 23:51:53 -05:00
args.rs core: switch to anyhow 2023-11-20 23:51:53 -05:00
config.rs core: switch to anyhow 2023-11-20 23:51:53 -05:00
logger.rs core: lock stdout before printing an error message to stderr 2023-07-08 18:52:42 -04:00
main.rs core: switch to anyhow 2023-11-20 23:51:53 -05:00
messages.rs core: lock stdout before printing an error message to stderr 2023-07-08 18:52:42 -04:00
README.md repo: make ripgrep build with the new organization 2020-02-17 19:24:53 -05:00
search.rs core: switch to anyhow 2023-11-20 23:51:53 -05:00
subject.rs core: polish the core of ripgrep 2023-10-09 20:29:52 -04:00

ripgrep core

This is the core ripgrep crate. In particular, main.rs is where the main function lives.

Most of ripgrep core consists of two things:

  • The definition of the CLI interface, including docs for every flag.
  • Glue code that brings the grep-matcher, grep-regex, grep-searcher and grep-printer crates together to actually execute the search.

Currently, there are no plans to make ripgrep core available as an independent library. However, much of the heavy lifting of ripgrep is done via its constituent crates, which can be reused independent of ripgrep. Unfortunately, there is no guide or tutorial to teach folks how to do this yet.