authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-10-08 23:33:19-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-10-08 23:33:19-04:00
log71fb4ef8dad086321d98cac1cb10ac5869a53e76
treed713cbaf9b2c933bb497598e21a97ea12aedc951
parent1586f244c44fa8814877c249a1c295e8a3785c2e
signaturelock-open Commit is signed but in an unrecognized format.

generated docs: separate Error Sets from Types


2 files changed, 34 insertions(+), 1 deletions(-)

lib/std/special/docs/index.html+5
......@@ -330,6 +330,11 @@
330330 <ul id="listFns">
331331 </ul>
332332 </div>
333 <div id="sectErrSets" class="hidden">
334 <h2>Error Sets</h2>
335 <ul id="listErrSets">
336 </ul>
337 </div>
333338 </section>
334339 <div id="helpDialog" class="hidden">
335340 <h1>Keyboard Shortcuts</h1>
lib/std/special/docs/main.js+29-1
......@@ -6,6 +6,8 @@
66 var domListPkgs = document.getElementById("listPkgs");
77 var domSectTypes = document.getElementById("sectTypes");
88 var domListTypes = document.getElementById("listTypes");
9 var domSectErrSets = document.getElementById("sectErrSets");
10 var domListErrSets = document.getElementById("listErrSets");
911 var domSectFns = document.getElementById("sectFns");
1012 var domListFns = document.getElementById("listFns");
1113 var domSectFields = document.getElementById("sectFields");
......@@ -101,6 +103,7 @@
101103 domFnDocs.classList.add("hidden");
102104 domSectPkgs.classList.add("hidden");
103105 domSectTypes.classList.add("hidden");
106 domSectErrSets.classList.add("hidden");
104107 domSectFns.classList.add("hidden");
105108 domSectFields.classList.add("hidden");
106109 domSectSearchResults.classList.add("hidden");
......@@ -174,6 +177,11 @@
174177 }
175178 }
176179
180 function typeIsErrSet(typeIndex) {
181 var typeObj = zigAnalysis.types[typeIndex];
182 return typeObj.kind === typeKindErrSetId;
183 }
184
177185 function typeIsGenericFn(typeIndex) {
178186 var typeObj = zigAnalysis.types[typeIndex];
179187 if (typeObj.kind !== typeKindFnId) {
......@@ -578,6 +586,7 @@
578586
579587 function renderContainer(container) {
580588 var typesList = [];
589 var errSetsList = [];
581590 var fnsList = [];
582591 var varsList = [];
583592 for (var i = 0; i < container.pubDecls.length; i += 1) {
......@@ -588,7 +597,11 @@
588597 }
589598 if (decl.type != null) {
590599 if (decl.type == typeTypeId) {
591 typesList.push(decl);
600 if (typeIsErrSet(decl.value)) {
601 errSetsList.push(decl);
602 } else {
603 typesList.push(decl);
604 }
592605 } else {
593606 var typeKind = zigAnalysis.types[decl.type].kind;
594607 if (typeKind === typeKindFnId) {
......@@ -604,6 +617,9 @@
604617 typesList.sort(function(a, b) {
605618 return operatorCompare(a.name, b.name);
606619 });
620 errSetsList.sort(function(a, b) {
621 return operatorCompare(a.name, b.name);
622 });
607623 fnsList.sort(function(a, b) {
608624 return operatorCompare(a.name, b.name);
609625 });
......@@ -623,6 +639,18 @@
623639 domSectTypes.classList.remove("hidden");
624640 }
625641
642 if (errSetsList.length !== 0) {
643 resizeDomList(domListErrSets, errSetsList.length, '<li><a href="#"></a></li>');
644 for (var i = 0; i < errSetsList.length; i += 1) {
645 var liDom = domListErrSets.children[i];
646 var aDom = liDom.children[0];
647 var decl = errSetsList[i];
648 aDom.textContent = decl.name;
649 aDom.setAttribute('href', navLinkDecl(decl.name));
650 }
651 domSectErrSets.classList.remove("hidden");
652 }
653
626654 if (fnsList.length !== 0) {
627655 resizeDomList(domListFns, fnsList.length, '<li><a href="#"></a></li>');
628656 for (var i = 0; i < fnsList.length; i += 1) {