about summary refs log tree commit diff
path: root/tests/rustdoc-js-std/parser-ident.js
diff options
context:
space:
mode:
Diffstat (limited to 'tests/rustdoc-js-std/parser-ident.js')
-rw-r--r--tests/rustdoc-js-std/parser-ident.js154
1 files changed, 154 insertions, 0 deletions
diff --git a/tests/rustdoc-js-std/parser-ident.js b/tests/rustdoc-js-std/parser-ident.js
new file mode 100644
index 00000000000..f65a7ce6692
--- /dev/null
+++ b/tests/rustdoc-js-std/parser-ident.js
@@ -0,0 +1,154 @@
+const PARSED = [
+    {
+        query: "R<!>",
+        elems: [{
+            name: "r",
+            fullPath: ["r"],
+            pathWithoutLast: [],
+            pathLast: "r",
+            generics: [
+                {
+                    name: "never",
+                    fullPath: ["never"],
+                    pathWithoutLast: [],
+                    pathLast: "never",
+                    generics: [],
+                    typeFilter: 15,
+                },
+            ],
+            typeFilter: -1,
+        }],
+        foundElems: 1,
+        original: "R<!>",
+        returned: [],
+        userQuery: "r<!>",
+        error: null,
+    },
+    {
+        query: "!",
+        elems: [{
+            name: "never",
+            fullPath: ["never"],
+            pathWithoutLast: [],
+            pathLast: "never",
+            generics: [],
+            typeFilter: 15,
+        }],
+        foundElems: 1,
+        original: "!",
+        returned: [],
+        userQuery: "!",
+        error: null,
+    },
+    {
+        query: "a!",
+        elems: [{
+            name: "a",
+            fullPath: ["a"],
+            pathWithoutLast: [],
+            pathLast: "a",
+            generics: [],
+            typeFilter: 14,
+        }],
+        foundElems: 1,
+        original: "a!",
+        returned: [],
+        userQuery: "a!",
+        error: null,
+    },
+    {
+        query: "a!::b",
+        elems: [],
+        foundElems: 0,
+        original: "a!::b",
+        returned: [],
+        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: ["never", "b"],
+            pathWithoutLast: ["never"],
+            pathLast: "b",
+            generics: [],
+            typeFilter: -1,
+        }],
+        foundElems: 1,
+        original: "!::b",
+        returned: [],
+        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: [],
+        foundElems: 0,
+        original: "a!::b!",
+        returned: [],
+        userQuery: "a!::b!",
+        error: "Cannot have associated items in macros",
+    },
+];