From 30734c4e6887f7167c01e2fef33d96f82d25b1b9 Mon Sep 17 00:00:00 2001 From: Guillaume Gomez Date: Fri, 1 Dec 2017 20:55:25 +0100 Subject: [PATCH] Fix deduplication of items --- src/librustdoc/html/static/main.js | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/librustdoc/html/static/main.js b/src/librustdoc/html/static/main.js index fda6b8359f1..cea510de692 100644 --- a/src/librustdoc/html/static/main.js +++ b/src/librustdoc/html/static/main.js @@ -720,6 +720,13 @@ return false; } + function generateId(ty) { + if (ty.parent && ty.parent.name) { + return itemTypes[ty.ty] + ty.path + ty.parent.name + ty.name; + } + return itemTypes[ty.ty] + ty.path + ty.name; + } + // quoted values mean literal search var nSearchWords = searchWords.length; if ((val.charAt(0) === "\"" || val.charAt(0) === "'") && @@ -730,7 +737,7 @@ var in_args = findArg(searchIndex[i], val, true); var returned = checkReturned(searchIndex[i], val, true); var ty = searchIndex[i]; - var fullId = itemTypes[ty.ty] + ty.path + ty.name; + var fullId = generateId(ty); if (searchWords[i] === val.name) { // filter type: ... queries @@ -786,7 +793,7 @@ if (!type) { continue; } - var fullId = itemTypes[ty.ty] + ty.path + ty.name; + var fullId = generateId(ty); // allow searching for void (no output) functions as well var typeOutput = type.output ? type.output.name : ""; @@ -872,7 +879,7 @@ var index = -1; // we want lev results to go lower than others var lev = MAX_LEV_DISTANCE + 1; - var fullId = itemTypes[ty.ty] + ty.path + ty.name; + var fullId = generateId(ty); if (searchWords[j].indexOf(split[i]) > -1 || searchWords[j].indexOf(val) > -1 || -- GitLab