Commit Graph

17 Commits

Author SHA1 Message Date
Sunshine
ceaa42b817 Update tests 2024-06-07 11:55:52 +08:00
Michael Howell
7b926555b7 rustdoc-search: add search query syntax Fn(T) -> U
This is implemented, in addition to the ML-style one,
because Rust does it. If we don't, we'll never hear the end of it.

This commit also refactors some duplicate parts of the parser
into a dedicated function.
2024-03-11 22:27:22 -07:00
Michael Howell
7f427f86bd rustdoc-search: parse and search with ML-style HOF
Option::map, for example, looks like this:

    option<t>, (t -> u) -> option<u>

This syntax searches all of the HOFs in Rust: traits Fn, FnOnce,
and FnMut, and bare fn primitives.
2024-03-11 21:22:03 -07:00
Michael Howell
f6a045cc6b rustdoc: search for tuples and unit by type with () 2023-12-26 12:54:17 -07:00
Michael Howell
930cba8061 rustdoc-search: replace TAB/NL/LF with SP first
This way, most of the parsing code doesn't need to be designed to handle
it, since they should always be treated exactly the same anyhow.
2023-11-29 11:02:56 -07:00
Michael Howell
93f17117ed rustdoc-search: removed dead parser code
This is already covered by the normal unexpected char path.
2023-11-29 11:02:56 -07:00
Michael Howell
c28de27a73 rustdoc-search: allow :: and ::
This restriction made sense back when spaces separated function
parameters, but now that they separate path components, there's
no real ambiguity any more.

Additionally, the Rust language allows it.
2023-11-29 11:02:50 -07:00
Michael Howell
63c50712f4 rustdoc-search: add support for associated types 2023-11-19 18:54:36 -07:00
Guillaume Gomez
e4ee329865 Fix eBNF and handling of whitespace characters when not in a path 2023-06-14 14:22:17 +02:00
Guillaume Gomez
b5f8258497 Update rustdoc-js-std tests 2023-06-14 14:22:17 +02:00
Michael Howell
db277f5284 rustdoc-search: search never type with !
This feature extends rustdoc to support the syntax that most users will
naturally attempt to use to search for diverging functions.
Part of #60485

It's already possible to do this search with `primitive:never`, but
that's not what the Rust language itself uses, so nobody will try it if
they aren't told or helped along.
2023-06-12 17:30:23 -07:00
Guillaume Gomez
9803651ee8 Update rustdoc-js* format 2023-06-09 17:00:47 +02:00
Michael Howell
e600c0ba0e rustdoc: add support for type filters in arguments and generics
This makes sense, since the search index has the information in it,
and it's more useful for function signature searches since a
function signature search's item type is, by definition, some type
of function (there's more than one, but not very many).
2023-03-20 22:41:57 -07:00
Guillaume Gomez
823671589f Add test for unclosed generic 2023-03-03 20:49:25 +01:00
Guillaume Gomez
cfb4af87e3 Add GUI test for rustdoc search errors background 2023-03-02 12:59:04 +01:00
Michael Howell
4de9c6d491 rustdoc: search by macro when query ends with !
Related to #96399
2023-02-16 18:16:09 -07:00
Albert Larsan
cf2dff2b1e
Move /src/test to /tests 2023-01-11 09:32:08 +00:00