mirror of
https://github.com/cimgui/cimgui.git
synced 2025-08-10 11:58:30 +01:00
cpp2ffi: take struct name; inside namespace (needed by imnodes)
This commit is contained in:
@@ -1151,13 +1151,17 @@ function M.Parser()
|
|||||||
|
|
||||||
local processer = function(it)
|
local processer = function(it)
|
||||||
if it.re_name == "typedef_re" or it.re_name == "functypedef_re" or it.re_name == "vardef_re" then
|
if it.re_name == "typedef_re" or it.re_name == "functypedef_re" or it.re_name == "vardef_re" then
|
||||||
if not it.parent then
|
if not it.parent or it.parent.re_name=="namespace_re" then
|
||||||
table.insert(outtabpre,it.item)
|
table.insert(outtabpre,it.item)
|
||||||
-- add typedef after struct name
|
-- add typedef after struct name
|
||||||
if it.re_name == "vardef_re" and it.item:match"^%s*struct" then
|
if it.re_name == "vardef_re" and it.item:match"^%s*struct" then
|
||||||
local stname = it.item:match("struct%s*(%S+)%s*;")
|
local stname = it.item:match("struct%s*(%S+)%s*;")
|
||||||
table.insert(typedefs_table,"typedef struct "..stname.." "..stname..";\n")
|
table.insert(typedefs_table,"typedef struct "..stname.." "..stname..";\n")
|
||||||
self.typedefs_dict[stname]="struct "..stname
|
self.typedefs_dict[stname]="struct "..stname
|
||||||
|
if it.parent then --must be struct name; inside namespace
|
||||||
|
local parname = get_parents_name(it)
|
||||||
|
self.embeded_structs[stname] = parname..stname
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
elseif it.re_name == "enum_re" then
|
elseif it.re_name == "enum_re" then
|
||||||
|
Reference in New Issue
Block a user