mirror of https://gitee.com/openkylin/libvirt.git
python: set default value to optional arguments
When prefixing with string (optional) or optional in the description of arguments to libvirt C APIs, in python, these arguments will be set as optional arugments, for example: * virDomainSaveFlags: * @domain: a domain object * @to: path for the output file * @dxml: (optional) XML config for adjusting guest xml used on restore * @flags: bitwise-OR of virDomainSaveRestoreFlags the corresponding python APIs is restoreFlags(self, frm, dxml=None, flags=0) The following python APIs are changed to: blockCommit(self, disk, base, top, bandwidth=0, flags=0) blockPull(self, disk, bandwidth=0, flags=0) blockRebase(self, disk, base, bandwidth=0, flags=0) migrate(self, dconn, flags=0, dname=None, uri=None, bandwidth=0) migrate2(self, dconn, dxml=None, flags=0, dname=None, uri=None, bandwidth=0) migrateToURI(self, duri, flags=0, dname=None, bandwidth=0) migrateToURI2(self, dconnuri=None, miguri=None, dxml=None, flags=0, \ dname=None, bandwidth=0) saveFlags(self, to, dxml=None, flags=0) migrate(self, domain, flags=0, dname=None, uri=None, bandwidth=0) migrate2(self, domain, dxml=None, flags=0, dname=None, uri=None, bandwidth=0) restoreFlags(self, frm, dxml=None, flags=0)
This commit is contained in:
parent
5c925a4d82
commit
c65fc29a31
|
@ -1005,6 +1005,8 @@ functions_int_default_test = "%s == -1"
|
||||||
def is_integral_type (name):
|
def is_integral_type (name):
|
||||||
return not re.search ("^(unsigned)? ?(int|long)$", name) is None
|
return not re.search ("^(unsigned)? ?(int|long)$", name) is None
|
||||||
|
|
||||||
|
def is_optional_arg(info):
|
||||||
|
return re.search("^\(?\optional\)?", info) is not None
|
||||||
# Functions returning lists which need special rules to check for errors
|
# Functions returning lists which need special rules to check for errors
|
||||||
# and raise exceptions.
|
# and raise exceptions.
|
||||||
functions_list_exception_test = {
|
functions_list_exception_test = {
|
||||||
|
@ -1332,6 +1334,11 @@ def buildWrappers(module):
|
||||||
if n != 0:
|
if n != 0:
|
||||||
classes.write(", ")
|
classes.write(", ")
|
||||||
classes.write("%s" % arg[0])
|
classes.write("%s" % arg[0])
|
||||||
|
if arg[0] == "flags" or is_optional_arg(arg[2]):
|
||||||
|
if is_integral_type(arg[1]):
|
||||||
|
classes.write("=0")
|
||||||
|
else:
|
||||||
|
classes.write("=None")
|
||||||
n = n + 1
|
n = n + 1
|
||||||
classes.write("):\n")
|
classes.write("):\n")
|
||||||
writeDoc(module, name, args, ' ', classes)
|
writeDoc(module, name, args, ' ', classes)
|
||||||
|
@ -1488,9 +1495,12 @@ def buildWrappers(module):
|
||||||
for arg in args:
|
for arg in args:
|
||||||
if n != index:
|
if n != index:
|
||||||
classes.write(", %s" % arg[0])
|
classes.write(", %s" % arg[0])
|
||||||
|
if arg[0] == "flags" or is_optional_arg(arg[2]):
|
||||||
|
if is_integral_type(arg[1]):
|
||||||
|
classes.write("=0")
|
||||||
|
else:
|
||||||
|
classes.write("=None")
|
||||||
n = n + 1
|
n = n + 1
|
||||||
if arg[0] == "flags":
|
|
||||||
classes.write("=0")
|
|
||||||
classes.write("):\n")
|
classes.write("):\n")
|
||||||
writeDoc(module, name, args, ' ', classes)
|
writeDoc(module, name, args, ' ', classes)
|
||||||
n = 0
|
n = 0
|
||||||
|
|
Loading…
Reference in New Issue