|
|
|
@ -161,16 +161,16 @@ def gen_headers(filename):
|
|
|
|
writer = StringIO()
|
|
|
|
writer = StringIO()
|
|
|
|
|
|
|
|
|
|
|
|
for fn in re.findall(
|
|
|
|
for fn in re.findall(
|
|
|
|
r"^pub extern \"C\" fn ([A_Za-z0-9_]+)\(([^{]+)?\)"
|
|
|
|
r"^pub (unsafe )?extern \"C\" fn ([A_Za-z0-9_]+)\(([^{]+)?\)"
|
|
|
|
r"(\s+-> ([^{]+))?",
|
|
|
|
r"(\s+-> ([^{]+))?",
|
|
|
|
buf,
|
|
|
|
buf,
|
|
|
|
re.M | re.DOTALL):
|
|
|
|
re.M | re.DOTALL):
|
|
|
|
|
|
|
|
|
|
|
|
args = []
|
|
|
|
args = []
|
|
|
|
|
|
|
|
|
|
|
|
fnName = fn[0]
|
|
|
|
fnName = fn[1]
|
|
|
|
|
|
|
|
|
|
|
|
for arg in fn[1].split(","):
|
|
|
|
for arg in fn[2].split(","):
|
|
|
|
if not arg:
|
|
|
|
if not arg:
|
|
|
|
continue
|
|
|
|
continue
|
|
|
|
arg_name, rs_type = arg.split(":", 1)
|
|
|
|
arg_name, rs_type = arg.split(":", 1)
|
|
|
|
@ -186,7 +186,7 @@ def gen_headers(filename):
|
|
|
|
if not args:
|
|
|
|
if not args:
|
|
|
|
args.append("void")
|
|
|
|
args.append("void")
|
|
|
|
|
|
|
|
|
|
|
|
retType = fn[3].strip()
|
|
|
|
retType = fn[4].strip()
|
|
|
|
if retType == "":
|
|
|
|
if retType == "":
|
|
|
|
returns = "void"
|
|
|
|
returns = "void"
|
|
|
|
else:
|
|
|
|
else:
|
|
|
|
|