aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2021-06-05 15:55:19 +0100
committergingerBill <bill@gingerbill.org>2021-06-05 15:55:19 +0100
commit61084d832d893eac2f22e79797cfc5dd55570973 (patch)
treed40f6b84a882bb0dcc45365f167dfbff96743fa3 /src
parentb957996577c9c142609e93269ac8925b138ef97d (diff)
Add missing `doc_format` flags for entities and improve docs for the odin package
Diffstat (limited to 'src')
-rw-r--r--src/docs_format.cpp1
-rw-r--r--src/docs_writer.cpp13
2 files changed, 12 insertions, 2 deletions
diff --git a/src/docs_format.cpp b/src/docs_format.cpp
index e620da51f..c4fd0359a 100644
--- a/src/docs_format.cpp
+++ b/src/docs_format.cpp
@@ -167,6 +167,7 @@ enum OdinDocEntityFlag : u32 {
OdinDocEntityFlag_Type_Alias = 1<<8,
OdinDocEntityFlag_Var_Thread_Local = 1<<9,
+ OdinDocEntityFlag_Var_Static = 1<<10,
};
struct OdinDocEntity {
diff --git a/src/docs_writer.cpp b/src/docs_writer.cpp
index 3c6c29b0d..fb4573b9f 100644
--- a/src/docs_writer.cpp
+++ b/src/docs_writer.cpp
@@ -813,19 +813,28 @@ OdinDocEntityIndex odin_doc_add_entity(OdinDocWriter *w, Entity *e) {
break;
case Entity_Variable:
if (e->Variable.is_foreign) { flags |= OdinDocEntityFlag_Foreign; }
- if (e->Variable.is_export) { flags |= OdinDocEntityFlag_Export; }
+ if (e->Variable.is_export) { flags |= OdinDocEntityFlag_Export; }
if (e->Variable.thread_local_model != "") {
flags |= OdinDocEntityFlag_Var_Thread_Local;
}
+ if (e->flags & EntityFlag_Static) { flags |= OdinDocEntityFlag_Var_Static; }
link_name = e->Variable.link_name;
break;
case Entity_Procedure:
if (e->Procedure.is_foreign) { flags |= OdinDocEntityFlag_Foreign; }
- if (e->Procedure.is_export) { flags |= OdinDocEntityFlag_Export; }
+ if (e->Procedure.is_export) { flags |= OdinDocEntityFlag_Export; }
link_name = e->Procedure.link_name;
break;
}
+ if (e->flags & EntityFlag_Param) {
+ if (e->flags & EntityFlag_Using) { flags |= OdinDocEntityFlag_Param_Using; }
+ if (e->flags & EntityFlag_ConstInput) { flags |= OdinDocEntityFlag_Param_Const; }
+ if (e->flags & EntityFlag_AutoCast) { flags |= OdinDocEntityFlag_Param_AutoCast; }
+ if (e->flags & EntityFlag_Ellipsis) { flags |= OdinDocEntityFlag_Param_Ellipsis; }
+ if (e->flags & EntityFlag_NoAlias) { flags |= OdinDocEntityFlag_Param_NoAlias; }
+ }
+
OdinDocString init_string = {};
if (init_expr) {
init_string = odin_doc_expr_string(w, init_expr);