aboutsummaryrefslogtreecommitdiff
path: root/src/docs_writer.cpp
diff options
context:
space:
mode:
authorCiD- <jkercher43@gmail.com>2022-04-08 13:50:06 -0400
committerCiD- <jkercher43@gmail.com>2022-04-08 13:50:06 -0400
commit56737c14314f541762f9adba78a33ac28036ec8c (patch)
treee4df7b8bb3199aa04cb568f6007f54e5bc97cb3c /src/docs_writer.cpp
parent9ae566adcc5e7e55039349eed2b4768739391ae8 (diff)
parentf2f1330238d46bb6e80eac33da99604ac2f99a52 (diff)
merge upstream/master
Diffstat (limited to 'src/docs_writer.cpp')
-rw-r--r--src/docs_writer.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/docs_writer.cpp b/src/docs_writer.cpp
index 2c5186c39..0ad10ac49 100644
--- a/src/docs_writer.cpp
+++ b/src/docs_writer.cpp
@@ -619,9 +619,11 @@ OdinDocTypeIndex odin_doc_type(OdinDocWriter *w, Type *type) {
case Type_Union:
doc_type.kind = OdinDocType_Union;
if (type->Union.is_polymorphic) { doc_type.flags |= OdinDocTypeFlag_Union_polymorphic; }
- if (type->Union.no_nil) { doc_type.flags |= OdinDocTypeFlag_Union_no_nil; }
- if (type->Union.maybe) { doc_type.flags |= OdinDocTypeFlag_Union_maybe; }
-
+ switch (type->Union.kind) {
+ case UnionType_maybe: doc_type.flags |= OdinDocTypeFlag_Union_maybe; break;
+ case UnionType_no_nil: doc_type.flags |= OdinDocTypeFlag_Union_no_nil; break;
+ case UnionType_shared_nil: doc_type.flags |= OdinDocTypeFlag_Union_shared_nil; break;
+ }
{
auto variants = array_make<OdinDocTypeIndex>(heap_allocator(), type->Union.variants.count);
defer (array_free(&variants));