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.
This commit is contained in:
parent
df77afbcaf
commit
db277f5284
7 changed files with 200 additions and 24 deletions
|
@ -8,11 +8,12 @@ const PARSED = [
|
|||
pathLast: "r",
|
||||
generics: [
|
||||
{
|
||||
name: "!",
|
||||
fullPath: ["!"],
|
||||
name: "never",
|
||||
fullPath: ["never"],
|
||||
pathWithoutLast: [],
|
||||
pathLast: "!",
|
||||
pathLast: "never",
|
||||
generics: [],
|
||||
typeFilter: 15,
|
||||
},
|
||||
],
|
||||
typeFilter: -1,
|
||||
|
@ -26,12 +27,12 @@ const PARSED = [
|
|||
{
|
||||
query: "!",
|
||||
elems: [{
|
||||
name: "!",
|
||||
fullPath: ["!"],
|
||||
name: "never",
|
||||
fullPath: ["never"],
|
||||
pathWithoutLast: [],
|
||||
pathLast: "!",
|
||||
pathLast: "never",
|
||||
generics: [],
|
||||
typeFilter: -1,
|
||||
typeFilter: 15,
|
||||
}],
|
||||
foundElems: 1,
|
||||
original: "!",
|
||||
|
@ -64,12 +65,21 @@ const PARSED = [
|
|||
userQuery: "a!::b",
|
||||
error: "Cannot have associated items in macros",
|
||||
},
|
||||
{
|
||||
query: "!<T>",
|
||||
elems: [],
|
||||
foundElems: 0,
|
||||
original: "!<T>",
|
||||
returned: [],
|
||||
userQuery: "!<t>",
|
||||
error: "Never type `!` does not accept generic parameters",
|
||||
},
|
||||
{
|
||||
query: "!::b",
|
||||
elems: [{
|
||||
name: "!::b",
|
||||
fullPath: ["!", "b"],
|
||||
pathWithoutLast: ["!"],
|
||||
fullPath: ["never", "b"],
|
||||
pathWithoutLast: ["never"],
|
||||
pathLast: "b",
|
||||
generics: [],
|
||||
typeFilter: -1,
|
||||
|
@ -80,6 +90,58 @@ const PARSED = [
|
|||
userQuery: "!::b",
|
||||
error: null,
|
||||
},
|
||||
{
|
||||
query: "b::!",
|
||||
elems: [],
|
||||
foundElems: 0,
|
||||
original: "b::!",
|
||||
returned: [],
|
||||
userQuery: "b::!",
|
||||
error: "Never type `!` is not associated item",
|
||||
},
|
||||
{
|
||||
query: "!::!",
|
||||
elems: [],
|
||||
foundElems: 0,
|
||||
original: "!::!",
|
||||
returned: [],
|
||||
userQuery: "!::!",
|
||||
error: "Never type `!` is not associated item",
|
||||
},
|
||||
{
|
||||
query: "b::!::c",
|
||||
elems: [],
|
||||
foundElems: 0,
|
||||
original: "b::!::c",
|
||||
returned: [],
|
||||
userQuery: "b::!::c",
|
||||
error: "Never type `!` is not associated item",
|
||||
},
|
||||
{
|
||||
query: "!::b<T>",
|
||||
elems: [{
|
||||
name: "!::b",
|
||||
fullPath: ["never", "b"],
|
||||
pathWithoutLast: ["never"],
|
||||
pathLast: "b",
|
||||
generics: [
|
||||
{
|
||||
name: "t",
|
||||
fullPath: ["t"],
|
||||
pathWithoutLast: [],
|
||||
pathLast: "t",
|
||||
generics: [],
|
||||
typeFilter: -1,
|
||||
}
|
||||
],
|
||||
typeFilter: -1,
|
||||
}],
|
||||
foundElems: 1,
|
||||
original: "!::b<T>",
|
||||
returned: [],
|
||||
userQuery: "!::b<t>",
|
||||
error: null,
|
||||
},
|
||||
{
|
||||
query: "a!::b!",
|
||||
elems: [],
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue