From 000a1df4a31eb04012d8c1f0bd3bff7815e19a03 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Wed, 9 Oct 2019 18:22:46 -0400 Subject: [PATCH] generated docs: add array type support See #3404 --- lib/std/special/docs/main.js | 10 ++++++++++ src/dump_analysis.cpp | 8 ++++++++ 2 files changed, 18 insertions(+) diff --git a/lib/std/special/docs/main.js b/lib/std/special/docs/main.js index 54203663e0..b99321788c 100644 --- a/lib/std/special/docs/main.js +++ b/lib/std/special/docs/main.js @@ -395,6 +395,16 @@ function typeName(typeObj, wantHtml, wantSubLink, fnDecl, skipFnName) { switch (typeObj.kind) { + case typeKinds.Array: + var name = "["; + if (wantHtml) { + name += '' + typeObj.len + ''; + } else { + name += typeObj.len; + } + name += "]"; + name += typeIndexName(typeObj.elem, wantHtml, wantSubLink, null); + return name; case typeKinds.Pointer: var name = ""; switch (typeObj.len) { diff --git a/src/dump_analysis.cpp b/src/dump_analysis.cpp index c124e6d86b..35a249c92a 100644 --- a/src/dump_analysis.cpp +++ b/src/dump_analysis.cpp @@ -918,6 +918,14 @@ static void anal_dump_type(AnalDumpCtx *ctx, ZigType *ty) { break; } + case ZigTypeIdArray: { + jw_object_field(jw, "len"); + jw_int(jw, ty->data.array.len); + + jw_object_field(jw, "elem"); + anal_dump_type_ref(ctx, ty->data.array.child_type); + break; + } default: jw_object_field(jw, "name"); jw_string(jw, buf_ptr(&ty->name));