llcppsigfetch:Constant & Incomplete Array

This commit is contained in:
luoliwoshang
2024-08-14 18:22:14 +08:00
parent 9a77a0c201
commit 6b1bc15f37
4 changed files with 123 additions and 4 deletions

View File

@@ -87,8 +87,14 @@ func (ct *Converter) TypeJSON(t ast.Expr) *cjson.JSON {
root.SetItem(c.Str("Names"), names)
case *ast.Ident:
root.SetItem(c.Str("Name"), cjson.String(c.AllocaCStr(d.Name)))
case *ast.BasicLit:
root.SetItem(c.Str("Kind"), cjson.Number(float64(d.Kind)))
root.SetItem(c.Str("Value"), cjson.String(c.AllocaCStr(d.Value)))
case *ast.PointerType:
root.SetItem(c.Str("X"), ct.TypeJSON(d.X))
case *ast.ArrayType:
root.SetItem(c.Str("Elt"), ct.TypeJSON(d.Elt))
root.SetItem(c.Str("Len"), ct.TypeJSON(d.Len))
case *ast.BuiltinType:
root.SetItem(c.Str("Kind"), cjson.Number(float64(d.Kind)))
root.SetItem(c.Str("Flags"), cjson.Number(float64(d.Flags)))