Message ID | 1397152467-17186-4-git-send-email-cyliu@suse.com |
---|---|
State | New |
Headers | show |
On 04/10/2014 11:53 AM, Chunyan Liu wrote: > Change qapi interfaces to output the newly added def_value_str when querying > command line options. > > Reviewed-by: Eric Blake <eblake@redhat.com> > Signed-off-by: Dong Xu Wang <wdongxu@linux.vnet.ibm.com> > Signed-off-by: Chunyan Liu <cyliu@suse.com> > --- > changes: > * Following Leandro's comment: > update description of @default That's a non-trivial change, since it is user-visible documentation. I don't think my Reviewed-by should have carried on this version of the patch. > > qapi-schema.json | 6 +++++- > qmp-commands.hx | 2 ++ > util/qemu-config.c | 4 ++++ > 3 files changed, 11 insertions(+), 1 deletion(-) > > diff --git a/qapi-schema.json b/qapi-schema.json > index 391356f..cc7c8b6 100644 > --- a/qapi-schema.json > +++ b/qapi-schema.json > @@ -4088,12 +4088,16 @@ > # > # @help: #optional human readable text string, not suitable for parsing. > # > +# @default: #optional option's default value - set if option is not > +# informed. (since 2.1) s/informed/provided/ The grammar is awkward, and I think it reads worse in comparison to the version that I reviewed in v22: +# @default: #optional string representation of the default used +# if the option is omitted. (since 2.0) Maybe taking the best of both approaches: @default: #optional string representation of the option's default value; this default will be used if the option is omitted (since 2.1) Or, we could go for short and sweet, to match qmp-commands.hx... > +++ b/qmp-commands.hx > @@ -2895,6 +2895,8 @@ Each array entry contains the following: > or 'size') > - "help": human readable description of the parameter > (json-string, optional) > + - "default": default value string for the parameter > + (json-string, optional) ...by having this in the .json file: @default: #optional default value string (since 2.0)
diff --git a/qapi-schema.json b/qapi-schema.json index 391356f..cc7c8b6 100644 --- a/qapi-schema.json +++ b/qapi-schema.json @@ -4088,12 +4088,16 @@ # # @help: #optional human readable text string, not suitable for parsing. # +# @default: #optional option's default value - set if option is not +# informed. (since 2.1) +# # Since 1.5 ## { 'type': 'CommandLineParameterInfo', 'data': { 'name': 'str', 'type': 'CommandLineParameterType', - '*help': 'str' } } + '*help': 'str', + '*default': 'str' } } ## # @CommandLineOptionInfo: diff --git a/qmp-commands.hx b/qmp-commands.hx index ed3ab92..1271332 100644 --- a/qmp-commands.hx +++ b/qmp-commands.hx @@ -2895,6 +2895,8 @@ Each array entry contains the following: or 'size') - "help": human readable description of the parameter (json-string, optional) + - "default": default value string for the parameter + (json-string, optional) Example: diff --git a/util/qemu-config.c b/util/qemu-config.c index f610101..d608b2f 100644 --- a/util/qemu-config.c +++ b/util/qemu-config.c @@ -68,6 +68,10 @@ static CommandLineParameterInfoList *query_option_descs(const QemuOptDesc *desc) info->has_help = true; info->help = g_strdup(desc[i].help); } + if (desc[i].def_value_str) { + info->has_q_default = true; + info->q_default = g_strdup(desc[i].def_value_str); + } entry = g_malloc0(sizeof(*entry)); entry->value = info;