diff --git a/chore/_xtool/llcppsigfetch/parse/cvt.go b/chore/_xtool/llcppsigfetch/parse/cvt.go index 7ee1e1e8..88c2703b 100644 --- a/chore/_xtool/llcppsigfetch/parse/cvt.go +++ b/chore/_xtool/llcppsigfetch/parse/cvt.go @@ -427,6 +427,7 @@ func (ct *Converter) ProcessStructOrClass(cursor clang.Cursor, tag ast.Tag) *ast decl := &ast.TypeDecl{ DeclBase: ct.CreateDeclBase(cursor), Tag: tag, + Name: &ast.Ident{Name: c.GoString(name.CStr())}, Fields: fields, Methods: methods, } diff --git a/chore/_xtool/llcppsigfetch/parse/cvt_test/decl_test/llgo.expect b/chore/_xtool/llcppsigfetch/parse/cvt_test/decl_test/llgo.expect index 5a37e43c..b97682c7 100644 --- a/chore/_xtool/llcppsigfetch/parse/cvt_test/decl_test/llgo.expect +++ b/chore/_xtool/llcppsigfetch/parse/cvt_test/decl_test/llgo.expect @@ -554,6 +554,9 @@ TestScope Case 4: "Name": "a" }, "Tag": 3, + "Name": { + "Name": "a" + }, "Fields": { "List": [] }, @@ -606,6 +609,9 @@ TestScope Case 5: } }, "Tag": 3, + "Name": { + "Name": "b" + }, "Fields": { "List": [] }, @@ -952,6 +958,9 @@ TestStructDecl Case 1: }, "Parent": null, "Tag": 0, + "Name": { + "Name": "A" + }, "Fields": { "List": [{ "Type": { @@ -1003,6 +1012,9 @@ TestStructDecl Case 2: }, "Parent": null, "Tag": 0, + "Name": { + "Name": "A" + }, "Fields": { "List": [{ "Type": { @@ -1054,6 +1066,9 @@ TestStructDecl Case 3: }, "Parent": null, "Tag": 0, + "Name": { + "Name": "A" + }, "Fields": { "List": [{ "Type": { @@ -1155,6 +1170,9 @@ TestClassDecl Case 1: "Name": "A" }, "Tag": 3, + "Name": { + "Name": "A" + }, "Fields": { "List": [{ "Type": { @@ -1208,6 +1226,9 @@ TestClassDecl Case 2: "Name": "A" }, "Tag": 3, + "Name": { + "Name": "A" + }, "Fields": { "List": [{ "Type": { @@ -1309,6 +1330,9 @@ TestUnionDecl Case 1: }, "Parent": null, "Tag": 1, + "Name": { + "Name": "A" + }, "Fields": { "List": [{ "Type": { diff --git a/chore/_xtool/llcppsigfetch/parse/dump.go b/chore/_xtool/llcppsigfetch/parse/dump.go index 716ecfe1..c43951da 100644 --- a/chore/_xtool/llcppsigfetch/parse/dump.go +++ b/chore/_xtool/llcppsigfetch/parse/dump.go @@ -81,6 +81,7 @@ func MarshalASTDecl(decl ast.Decl) *cjson.JSON { case *ast.TypeDecl: MarshalASTDeclBase(d.DeclBase, root) root.SetItem(c.Str("Tag"), cjson.Number(float64(d.Tag))) + root.SetItem(c.Str("Name"), MarshalASTExpr(d.Name)) root.SetItem(c.Str("Fields"), MarshalASTExpr(d.Fields)) methods := cjson.Array() for _, m := range d.Methods {