提交 1b68d3f0 编写于 作者: C Cole Robinson

python: Generate virStreamFree but don't expose in bindings

Turns out I was right in removing this the first time :) This is
needed in our custom __del__ function, but the C code wasn't
being generated. Add new infrastructure to do what we want
上级 a585eba4
...@@ -393,7 +393,6 @@ skip_function = ( ...@@ -393,7 +393,6 @@ skip_function = (
'virSaveLastError', # We have our own python error wrapper 'virSaveLastError', # We have our own python error wrapper
'virFreeError', # Only needed if we use virSaveLastError 'virFreeError', # Only needed if we use virSaveLastError
'virStreamFree', # Overridden in libvirt-override-virStream.py
'virStreamRecvAll', # Pure python libvirt-override-virStream.py 'virStreamRecvAll', # Pure python libvirt-override-virStream.py
'virStreamSendAll', # Pure python libvirt-override-virStream.py 'virStreamSendAll', # Pure python libvirt-override-virStream.py
'virStreamRecv', # overridden in libvirt-override-virStream.py 'virStreamRecv', # overridden in libvirt-override-virStream.py
...@@ -423,6 +422,12 @@ skip_function = ( ...@@ -423,6 +422,12 @@ skip_function = (
"virStorageVolGetConnect", "virStorageVolGetConnect",
) )
# Generate C code, but skip python impl
function_skip_python_impl = {
"virStreamFree", # Needed in custom virStream __del__, but free shouldn't
# be exposed in bindings
}
function_skip_index_one = ( function_skip_index_one = (
"virDomainRevertToSnapshot", "virDomainRevertToSnapshot",
) )
...@@ -433,6 +438,7 @@ def print_function_wrapper(name, output, export, include): ...@@ -433,6 +438,7 @@ def print_function_wrapper(name, output, export, include):
global unknown_types global unknown_types
global functions global functions
global skipped_modules global skipped_modules
global function_skip_python_impl
try: try:
(desc, ret, args, file, cond) = functions[name] (desc, ret, args, file, cond) = functions[name]
...@@ -585,6 +591,9 @@ def print_function_wrapper(name, output, export, include): ...@@ -585,6 +591,9 @@ def print_function_wrapper(name, output, export, include):
include.write("#endif /* %s */\n" % cond) include.write("#endif /* %s */\n" % cond)
export.write("#endif /* %s */\n" % cond) export.write("#endif /* %s */\n" % cond)
output.write("#endif /* %s */\n" % cond) output.write("#endif /* %s */\n" % cond)
if name in function_skip_python_impl:
return 0
return 1 return 1
def buildStubs(): def buildStubs():
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册