Commit 421ad51dc0

Krzysztof Wolicki <der.teufel.mail@gmail.com>
2023-04-16 01:29:20
autodoc: Fix errors in main.js; add support for defaults in exprName
1 parent 23ac4dd
Changed files (1)
lib
docs
lib/docs/main.js
@@ -1816,23 +1816,23 @@ const NAV_MODES = {
                 name = "struct { ";
               }
             }
-            if (structObj.fields.length > 1 && opts.wantHtml) { name += "</br>"; }
+            if (structObj.field_types.length > 1 && opts.wantHtml) { name += "</br>"; }
             let indent = "";
-            if (structObj.fields.length > 1 && opts.wantHtml) {
+            if (structObj.field_types.length > 1 && opts.wantHtml) {
               indent = "&nbsp;&nbsp;&nbsp;&nbsp;"
             }
-            if (opts.indent && structObj.fields.length > 1) {
+            if (opts.indent && structObj.field_types.length > 1) {
               indent = opts.indent + indent;
             }
             let structNode = getAstNode(structObj.src);
             let field_end = ",";
-            if (structObj.fields.length > 1 && opts.wantHtml) {
+            if (structObj.field_types.length > 1 && opts.wantHtml) {
               field_end += "</br>";
             } else {
               field_end += " ";
             }
 
-            for (let i = 0; i < structObj.fields.length; i += 1) {
+            for (let i = 0; i < structObj.field_types.length; i += 1) {
               let fieldNode = getAstNode(structNode.fields[i]);
               let fieldName = fieldNode.name;
               let html = indent;
@@ -1840,18 +1840,22 @@ const NAV_MODES = {
                 html += escapeHtml(fieldName);
               }
 
-              let fieldTypeExpr = structObj.fields[i];
+              let fieldTypeExpr = structObj.field_types[i];
               if (!structObj.is_tuple) {
                 html += ": ";
               }
 
               html += exprName(fieldTypeExpr, { ...opts, indent: indent });
 
+              if (structObj.field_defaults[i] !== null) {
+                html += " = " + exprName(structObj.field_defaults[i], opts);
+              }
+
               html += field_end;
 
               name += html;
             }
-            if (opts.indent && structObj.fields.length > 1) {
+            if (opts.indent && structObj.field_types.length > 1) {
               name += opts.indent;
             }
             name += "}";
@@ -1897,6 +1901,10 @@ const NAV_MODES = {
               let fieldName = fieldNode.name;
               let html = indent + escapeHtml(fieldName);
 
+              if (enumObj.values[i] !== null) {
+                html += " = " + exprName(enumObj.values[i], opts);
+              }
+
               html += field_end;
 
               name += html;