From: Anthony PERARD <anthony.perard@citrix.com>
To: Ian Campbell <Ian.Campbell@citrix.com>
Cc: Ian Jackson <Ian.Jackson@eu.citrix.com>,
Xen Devel <xen-devel@lists.xen.org>
Subject: Re: [PATCH V2 3/9] libxl_json: Introduce libxl__json_object_to_yajl_gen.
Date: Tue, 25 Sep 2012 15:20:30 +0100 [thread overview]
Message-ID: <5061BDAE.5030700@citrix.com> (raw)
In-Reply-To: <1348562684.3452.116.camel@zakaz.uk.xensource.com>
On 09/25/2012 09:44 AM, Ian Campbell wrote:
> On Mon, 2012-09-17 at 19:22 +0100, Anthony PERARD wrote:
>> This function converts a libxl__json_object to yajl by calling every yajl_gen_*
>> function on a preallocated yajl_gen hand.
>>
>> This helps to integrate a json_object into an already existing yajl_gen tree.
>>
>> This function is used in a later patch.
>>
>> Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
>> ---
>> tools/libxl/libxl_internal.h | 3 +++
>> tools/libxl/libxl_json.c | 63 ++++++++++++++++++++++++++++++++++++++++++++
>> 2 files changed, 66 insertions(+)
>>
>> diff --git a/tools/libxl/libxl_internal.h b/tools/libxl/libxl_internal.h
>> index 3c2dcaa..9c1482d 100644
>> --- a/tools/libxl/libxl_internal.h
>> +++ b/tools/libxl/libxl_internal.h
>> [...]
>
>> + }
>> + case JSON_ERROR:
>
> I can't see this being used anywhere, could it just be removed from the
> enum?
Yes.
>> + case JSON_ANY:
>
> Is JSON_ANY sort of like a JSON "void *"? Is it ever valid to be passed
> one here, IOW does this represent a coding error (==abort()) or a run
> time one (== log something)?
This value is only used as parameter of one function,
libxl__json_map_get, that return an object from the json_object tree
with the expected type. But sometime we don't expect any type so
JSON_ANY is used and allow "map_get" to return any type of object.
So JSON_ANY is not valid here and would probably be a coding error.
>> + default:
>
> If you skip this default case then some compilers will warn (a runtime
> error) if we forget to add a new JSON_FOO here.
I tried to remove the default, but then gcc believe that the function
would not return in some cases. But I did not add a return because it
felt weird to add a useless/never_executed return/abort.
But it seams better to remove the default case, so I will.
>> + return -1;
>> + }
>> +}
Thanks,
--
Anthony PERARD
next prev parent reply other threads:[~2012-09-25 14:20 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-17 18:22 [PATCH V2 0/9] Set dirty log on qemu-xen Anthony PERARD
2012-09-17 18:22 ` [PATCH V2 1/9] libxl_json: Use libxl alloc function with NOGC Anthony PERARD
2012-09-25 8:39 ` Ian Campbell
2012-09-25 13:54 ` Anthony PERARD
2012-09-17 18:22 ` [PATCH V2 2/9] libxl_json: Export json_object related function Anthony PERARD
2012-09-25 8:40 ` Ian Campbell
2012-09-17 18:22 ` [PATCH V2 3/9] libxl_json: Introduce libxl__json_object_to_yajl_gen Anthony PERARD
2012-09-25 8:44 ` Ian Campbell
2012-09-25 14:20 ` Anthony PERARD [this message]
2012-09-25 14:32 ` Ian Campbell
2012-09-17 18:22 ` [PATCH V2 4/9] libxl_qmp: Introduces helpers to create an argument list Anthony PERARD
2012-09-25 8:54 ` Ian Campbell
2012-09-25 14:45 ` Anthony PERARD
2012-09-25 9:06 ` Ian Campbell
2012-09-17 18:22 ` [PATCH V2 5/9] libxl_qmp: Use qmp_parameters_* functions for param list of a QMP command Anthony PERARD
2012-09-25 8:56 ` Ian Campbell
2012-09-17 18:22 ` [PATCH V2 6/9] libxl_qmp: Simplify run of single QMP commands Anthony PERARD
2012-09-25 8:57 ` Ian Campbell
2012-09-17 18:22 ` [PATCH V2 7/9] libxl_qmp: Introduce libxl__qmp_set_global_dirty_log Anthony PERARD
2012-09-25 9:06 ` Ian Campbell
2012-09-25 9:10 ` Ian Campbell
2012-09-25 14:51 ` Anthony PERARD
2012-09-17 18:22 ` [PATCH V2 8/9] libxl_dom: Call the right switch logdirty for the right DM Anthony PERARD
2012-09-25 9:22 ` Ian Campbell
2012-09-17 18:22 ` [PATCH V2 9/9] libxl: Allow migration with qemu-xen Anthony PERARD
2012-09-25 9:23 ` Ian Campbell
2012-09-25 14:53 ` Anthony PERARD
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5061BDAE.5030700@citrix.com \
--to=anthony.perard@citrix.com \
--cc=Ian.Campbell@citrix.com \
--cc=Ian.Jackson@eu.citrix.com \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.