Browse Source

Update doc-format

gingerBill 3 years ago
parent
commit
47bef7a557
3 changed files with 22 additions and 18 deletions
  1. 7 5
      core/odin/doc-format/doc_format.odin
  2. 14 13
      src/docs_format.cpp
  3. 1 0
      src/docs_writer.cpp

+ 7 - 5
core/odin/doc-format/doc_format.odin

@@ -10,7 +10,7 @@ Array :: struct($T: typeid) {
 String :: distinct Array(byte)
 String :: distinct Array(byte)
 
 
 Version_Type_Major :: 0
 Version_Type_Major :: 0
-Version_Type_Minor :: 1
+Version_Type_Minor :: 2
 Version_Type_Patch :: 0
 Version_Type_Patch :: 0
 
 
 Version_Type :: struct {
 Version_Type :: struct {
@@ -101,17 +101,19 @@ Entity_Flag :: enum u32le {
 	Param_Ellipsis  = 5, // Variadic parameter
 	Param_Ellipsis  = 5, // Variadic parameter
 	Param_CVararg   = 6, // #c_vararg
 	Param_CVararg   = 6, // #c_vararg
 	Param_No_Alias  = 7, // #no_alias
 	Param_No_Alias  = 7, // #no_alias
+	Param_Any_Int   = 8, // #any_int
 
 
-	Type_Alias = 8,
+	Type_Alias = 20,
 
 
-	Var_Thread_Local = 9,
-	Var_Static       = 10,
+	Var_Thread_Local = 40,
+	Var_Static       = 41,
 }
 }
 
 
-Entity_Flags :: distinct bit_set[Entity_Flag; u32le]
+Entity_Flags :: distinct bit_set[Entity_Flag; u64le]
 
 
 Entity :: struct {
 Entity :: struct {
 	kind:             Entity_Kind,
 	kind:             Entity_Kind,
+	_:                u32le, // reserved
 	flags:            Entity_Flags,
 	flags:            Entity_Flags,
 	pos:              Position,
 	pos:              Position,
 	name:             String,
 	name:             String,

+ 14 - 13
src/docs_format.cpp

@@ -14,7 +14,7 @@ struct OdinDocVersionType {
 };
 };
 
 
 #define OdinDocVersionType_Major 0
 #define OdinDocVersionType_Major 0
-#define OdinDocVersionType_Minor 1
+#define OdinDocVersionType_Minor 2
 #define OdinDocVersionType_Patch 0
 #define OdinDocVersionType_Patch 0
 
 
 struct OdinDocHeaderBase {
 struct OdinDocHeaderBase {
@@ -155,21 +155,22 @@ enum OdinDocEntityKind : u32 {
 	OdinDocEntity_LibraryName = 7,
 	OdinDocEntity_LibraryName = 7,
 };
 };
 
 
-enum OdinDocEntityFlag : u32 {
-	OdinDocEntityFlag_Foreign = 1<<0,
-	OdinDocEntityFlag_Export  = 1<<1,
+enum OdinDocEntityFlag : u64 {
+	OdinDocEntityFlag_Foreign = 1ull<<0,
+	OdinDocEntityFlag_Export  = 1ull<<1,
 
 
-	OdinDocEntityFlag_Param_Using    = 1<<2,
-	OdinDocEntityFlag_Param_Const    = 1<<3,
-	OdinDocEntityFlag_Param_AutoCast = 1<<4,
-	OdinDocEntityFlag_Param_Ellipsis = 1<<5,
-	OdinDocEntityFlag_Param_CVararg  = 1<<6,
-	OdinDocEntityFlag_Param_NoAlias  = 1<<7,
+	OdinDocEntityFlag_Param_Using    = 1ull<<2,
+	OdinDocEntityFlag_Param_Const    = 1ull<<3,
+	OdinDocEntityFlag_Param_AutoCast = 1ull<<4,
+	OdinDocEntityFlag_Param_Ellipsis = 1ull<<5,
+	OdinDocEntityFlag_Param_CVararg  = 1ull<<6,
+	OdinDocEntityFlag_Param_NoAlias  = 1ull<<7,
+	OdinDocEntityFlag_Param_AnyInt   = 1ull<<8,
 
 
-	OdinDocEntityFlag_Type_Alias = 1<<8,
+	OdinDocEntityFlag_Type_Alias = 1ull<<29,
 
 
-	OdinDocEntityFlag_Var_Thread_Local = 1<<9,
-	OdinDocEntityFlag_Var_Static       = 1<<10,
+	OdinDocEntityFlag_Var_Thread_Local = 1ull<<40,
+	OdinDocEntityFlag_Var_Static       = 1ull<<41,
 };
 };
 
 
 struct OdinDocEntity {
 struct OdinDocEntity {

+ 1 - 0
src/docs_writer.cpp

@@ -850,6 +850,7 @@ OdinDocEntityIndex odin_doc_add_entity(OdinDocWriter *w, Entity *e) {
 		if (e->flags & EntityFlag_AutoCast)   { flags |= OdinDocEntityFlag_Param_AutoCast; }
 		if (e->flags & EntityFlag_AutoCast)   { flags |= OdinDocEntityFlag_Param_AutoCast; }
 		if (e->flags & EntityFlag_Ellipsis)   { flags |= OdinDocEntityFlag_Param_Ellipsis; }
 		if (e->flags & EntityFlag_Ellipsis)   { flags |= OdinDocEntityFlag_Param_Ellipsis; }
 		if (e->flags & EntityFlag_NoAlias)    { flags |= OdinDocEntityFlag_Param_NoAlias;  }
 		if (e->flags & EntityFlag_NoAlias)    { flags |= OdinDocEntityFlag_Param_NoAlias;  }
+		if (e->flags & EntityFlag_AnyInt)     { flags |= OdinDocEntityFlag_Param_AnyInt;   }
 	}
 	}
 
 
 	OdinDocString init_string = {};
 	OdinDocString init_string = {};