mirror of
https://github.com/cimgui/cimgui.git
synced 2026-06-23 15:04:56 +01:00
cpp2ffi: add forced_opaque (cimnodes_editor)
This commit is contained in:
@@ -1769,6 +1769,7 @@ function M.Parser()
|
|||||||
par.skipped = {}
|
par.skipped = {}
|
||||||
par.UDTs = {}
|
par.UDTs = {}
|
||||||
par.opaque_structs = {}
|
par.opaque_structs = {}
|
||||||
|
par.forced_opaque = {}
|
||||||
|
|
||||||
par.save_output = save_output
|
par.save_output = save_output
|
||||||
par.genConversors = genConversions
|
par.genConversors = genConversions
|
||||||
@@ -2022,11 +2023,16 @@ function M.Parser()
|
|||||||
it.opaque_struct = get_parents_name(it)..it.name
|
it.opaque_struct = get_parents_name(it)..it.name
|
||||||
self.opaque_structs[it.name] = it.opaque_struct
|
self.opaque_structs[it.name] = it.opaque_struct
|
||||||
end
|
end
|
||||||
|
if self.forced_opaque[it.name] then
|
||||||
|
print("--make forced opaque opaque derived",it.name)
|
||||||
|
it.opaque_struct = get_parents_name(it)..it.name
|
||||||
|
self.opaque_structs[it.name] = it.opaque_struct
|
||||||
|
end
|
||||||
for j,child in ipairs(it.childs) do
|
for j,child in ipairs(it.childs) do
|
||||||
-- if child.re_name == "vardef_re" and child.item:match"using" then
|
-- if child.re_name == "vardef_re" and child.item:match"using" then
|
||||||
-- print("=====using",child.item)
|
-- print("=====using",child.item)
|
||||||
-- end
|
-- end
|
||||||
if child.re_name == "vardef_re" and child.item:match"std::" then
|
if (child.re_name == "vardef_re") and child.item:match"std::" then
|
||||||
print("--make opaque",it.name,child.item)
|
print("--make opaque",it.name,child.item)
|
||||||
--M.prtable(itparent)
|
--M.prtable(itparent)
|
||||||
--it.opaque_struct = (itparent and itparent.name .."::" or "")..it.name
|
--it.opaque_struct = (itparent and itparent.name .."::" or "")..it.name
|
||||||
@@ -2121,7 +2127,7 @@ function M.Parser()
|
|||||||
--save_data("./preparse"..tostring(self):gsub("table: ","")..".c",txt)
|
--save_data("./preparse"..tostring(self):gsub("table: ","")..".c",txt)
|
||||||
--]]
|
--]]
|
||||||
self.itemsarr = par:parseItemsR2(txt)
|
self.itemsarr = par:parseItemsR2(txt)
|
||||||
save_data("./itemsarr.lua",ToStr(self.itemsarr))
|
save_data("./itemsarr.lua",M.serializeTableF(self.itemsarr))--ToStr(self.itemsarr))
|
||||||
itemsarr = self.itemsarr
|
itemsarr = self.itemsarr
|
||||||
---find opaque_structs
|
---find opaque_structs
|
||||||
self:Listing(itemsarr,function(it)
|
self:Listing(itemsarr,function(it)
|
||||||
|
|||||||
Reference in New Issue
Block a user