diff options
| author | gingerBill <bill@gingerbill.org> | 2023-01-18 16:17:02 +0000 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2023-01-18 16:17:02 +0000 |
| commit | 7f3795a231f96690a7668a61ce71420025306970 (patch) | |
| tree | a3380fa431a653c6a175cd531b80a92f9b543166 /src/docs.cpp | |
| parent | eb1d00ced6e27453b52f4420766cca8886898d01 (diff) | |
Improve `odin doc` string printing (Fixes #2246)
Diffstat (limited to 'src/docs.cpp')
| -rw-r--r-- | src/docs.cpp | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/src/docs.cpp b/src/docs.cpp index 54bb0c7a2..f00d4e15a 100644 --- a/src/docs.cpp +++ b/src/docs.cpp @@ -49,10 +49,9 @@ gb_internal GB_COMPARE_PROC(cmp_entities_for_printing) { int ox = print_entity_kind_ordering[x->kind]; int oy = print_entity_kind_ordering[y->kind]; res = ox - oy; - if (res != 0) { - return res; + if (res == 0) { + res = string_compare(x->token.string, y->token.string); } - res = string_compare(x->token.string, y->token.string); return res; } @@ -230,23 +229,20 @@ gb_internal void print_doc_package(CheckerInfo *info, AstPackage *pkg) { // Fine break; } - array_add(&entities, e); - } - gb_sort_array(entities.data, entities.count, cmp_entities_for_printing); - - bool show_docs = (build_context.cmd_doc_flags & CmdDocFlag_Short) == 0; - - EntityKind curr_entity_kind = Entity_Invalid; - for_array(i, entities) { - Entity *e = entities[i]; if (e->pkg != pkg) { continue; } if (!is_entity_exported(e)) { continue; } + array_add(&entities, e); + } + gb_sort_array(entities.data, entities.count, cmp_entities_for_printing); + bool show_docs = (build_context.cmd_doc_flags & CmdDocFlag_Short) == 0; + EntityKind curr_entity_kind = Entity_Invalid; + for (Entity *e : entities) { if (curr_entity_kind != e->kind) { if (curr_entity_kind != Entity_Invalid) { print_doc_line(0, ""); @@ -287,7 +283,7 @@ gb_internal void print_doc_package(CheckerInfo *info, AstPackage *pkg) { print_doc_expr(init_expr); } - gb_printf(";\n"); + gb_printf("\n"); if (show_docs) { print_doc_comment_group_string(3, docs); |