zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 71fb4ef8dad086321d98cac1cb10ac5869a53e76 (tree)
parent 1586f244c44fa8814877c249a1c295e8a3785c2e
Author: Andrew Kelley <andrew@ziglang.org>
Date:   Tue,  8 Oct 2019 23:33:19 -0400

generated docs: separate Error Sets from Types

Diffstat:
Mlib/std/special/docs/index.html | 5+++++
Mlib/std/special/docs/main.js | 30+++++++++++++++++++++++++++++-
2 files changed, 34 insertions(+), 1 deletion(-)

diff --git a/lib/std/special/docs/index.html b/lib/std/special/docs/index.html @@ -330,6 +330,11 @@ <ul id="listFns"> </ul> </div> + <div id="sectErrSets" class="hidden"> + <h2>Error Sets</h2> + <ul id="listErrSets"> + </ul> + </div> </section> <div id="helpDialog" class="hidden"> <h1>Keyboard Shortcuts</h1> diff --git a/lib/std/special/docs/main.js b/lib/std/special/docs/main.js @@ -6,6 +6,8 @@ var domListPkgs = document.getElementById("listPkgs"); var domSectTypes = document.getElementById("sectTypes"); var domListTypes = document.getElementById("listTypes"); + var domSectErrSets = document.getElementById("sectErrSets"); + var domListErrSets = document.getElementById("listErrSets"); var domSectFns = document.getElementById("sectFns"); var domListFns = document.getElementById("listFns"); var domSectFields = document.getElementById("sectFields"); @@ -101,6 +103,7 @@ domFnDocs.classList.add("hidden"); domSectPkgs.classList.add("hidden"); domSectTypes.classList.add("hidden"); + domSectErrSets.classList.add("hidden"); domSectFns.classList.add("hidden"); domSectFields.classList.add("hidden"); domSectSearchResults.classList.add("hidden"); @@ -174,6 +177,11 @@ } } + function typeIsErrSet(typeIndex) { + var typeObj = zigAnalysis.types[typeIndex]; + return typeObj.kind === typeKindErrSetId; + } + function typeIsGenericFn(typeIndex) { var typeObj = zigAnalysis.types[typeIndex]; if (typeObj.kind !== typeKindFnId) { @@ -578,6 +586,7 @@ function renderContainer(container) { var typesList = []; + var errSetsList = []; var fnsList = []; var varsList = []; for (var i = 0; i < container.pubDecls.length; i += 1) { @@ -588,7 +597,11 @@ } if (decl.type != null) { if (decl.type == typeTypeId) { - typesList.push(decl); + if (typeIsErrSet(decl.value)) { + errSetsList.push(decl); + } else { + typesList.push(decl); + } } else { var typeKind = zigAnalysis.types[decl.type].kind; if (typeKind === typeKindFnId) { @@ -604,6 +617,9 @@ typesList.sort(function(a, b) { return operatorCompare(a.name, b.name); }); + errSetsList.sort(function(a, b) { + return operatorCompare(a.name, b.name); + }); fnsList.sort(function(a, b) { return operatorCompare(a.name, b.name); }); @@ -623,6 +639,18 @@ domSectTypes.classList.remove("hidden"); } + if (errSetsList.length !== 0) { + resizeDomList(domListErrSets, errSetsList.length, '<li><a href="#"></a></li>'); + for (var i = 0; i < errSetsList.length; i += 1) { + var liDom = domListErrSets.children[i]; + var aDom = liDom.children[0]; + var decl = errSetsList[i]; + aDom.textContent = decl.name; + aDom.setAttribute('href', navLinkDecl(decl.name)); + } + domSectErrSets.classList.remove("hidden"); + } + if (fnsList.length !== 0) { resizeDomList(domListFns, fnsList.length, '<li><a href="#"></a></li>'); for (var i = 0; i < fnsList.length; i += 1) {