about summary refs log tree commit diff
path: root/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
diff options
context:
space:
mode:
authorDylan DPC <99973273+Dylan-DPC@users.noreply.github.com>2022-04-21 01:14:13 +0200
committerGitHub <noreply@github.com>2022-04-21 01:14:13 +0200
commit976c6b2d193148ca9df3a505e55c5ba5da22cd96 (patch)
treee190b90c0d06101df0a683fdc5b5fc339c47349a /compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
parent51ea9bb29b07d76c5a7167d054b54f4eb7f5b44e (diff)
parent4d26bde4f0b24ca6121eec167bc8d48f4b7179cc (diff)
downloadrust-976c6b2d193148ca9df3a505e55c5ba5da22cd96.tar.gz
rust-976c6b2d193148ca9df3a505e55c5ba5da22cd96.zip
Rollup merge of #90630 - GuillaumeGomez:improve-rustdoc-search, r=notriddle
Create real parser for search queries

You can test it [here](https://rustdoc.crud.net/imperio/improve-rustdoc-search/std/index.html).

This PR adds a real parser for the query engine in rustdoc. The parser is quite simple but it allows to makes query handling much easier. I added a new testsuite to ensure it works as expected and ran fuzzing checks on it for a few hours without problems.

So about the parser: as you can see in the screenshot, it handles recursive generics parsing. It also allows to set which item should use exact matching by adding double-quotes around it (look for `exact_search` in the screenshot).

Now about the query engine itself: I simplified it a lot thanks to the parsed query. It behaves mostly the same when there is only one argument, but is much more powerful when there are more than one.

When making this change, we also removed the support for multi-query.

PS: A big part of the PR is tests and test-related code. :)

r? `@camelid`
Diffstat (limited to 'compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp')
0 files changed, 0 insertions, 0 deletions