From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60738) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Vb1lx-0003Oi-RA for qemu-devel@nongnu.org; Tue, 29 Oct 2013 01:23:30 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Vb1ll-0001jo-BJ for qemu-devel@nongnu.org; Tue, 29 Oct 2013 01:23:21 -0400 Received: from e28smtp01.in.ibm.com ([122.248.162.1]:42830) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Vb1lk-0001jS-IK for qemu-devel@nongnu.org; Tue, 29 Oct 2013 01:23:09 -0400 Received: from /spool/local by e28smtp01.in.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Tue, 29 Oct 2013 10:53:02 +0530 Received: from d28relay04.in.ibm.com (d28relay04.in.ibm.com [9.184.220.61]) by d28dlp02.in.ibm.com (Postfix) with ESMTP id 782183940017 for ; Tue, 29 Oct 2013 10:52:37 +0530 (IST) Received: from d28av02.in.ibm.com (d28av02.in.ibm.com [9.184.220.64]) by d28relay04.in.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id r9T5Ms6643450462 for ; Tue, 29 Oct 2013 10:52:55 +0530 Received: from d28av02.in.ibm.com (localhost [127.0.0.1]) by d28av02.in.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id r9T5MvNC015868 for ; Tue, 29 Oct 2013 10:52:57 +0530 Message-ID: <526F4631.50706@linux.vnet.ibm.com> Date: Tue, 29 Oct 2013 13:22:57 +0800 From: Wenchao Xia MIME-Version: 1.0 References: <1382321765-29052-1-git-send-email-xiawenc@linux.vnet.ibm.com> <1382321765-29052-4-git-send-email-xiawenc@linux.vnet.ibm.com> <5265917D.3000903@redhat.com> <526E3FF1.7060305@redhat.com> In-Reply-To: <526E3FF1.7060305@redhat.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [PATCH 3/6] qapi: rename prefix QEVENT to Q_EVENT List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini , Eric Blake Cc: kwolf@redhat.com, lcapitulino@redhat.com, qemu-devel@nongnu.org, stefanha@redhat.com, armbru@redhat.com 于 2013/10/28 18:44, Paolo Bonzini 写道: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Il 21/10/2013 22:41, Eric Blake ha scritto: >> On 10/21/2013 03:16 AM, Wenchao Xia wrote: >>> The define will be moved to qapi-schema.json later, so rename >>> the prefix to match its naming style. >> Wouldn't it be simpler to fix the code generator to special case >> QEvent to turn into QEVENT, instead of having to go through this >> churn? But if we _like_ the Q_EVENT_ prefix, then this looks >> fairly mechanical: > No, I disagree. However, since something _is_ being renamed, we might > as well rename every QEVENT_ to MONITOR_EVENT_ and avoid patch 2. > > Paolo > MONITOR_EVENT seems tide to monitor too much, since it will be present in qapi-schema, I think Q_EVENT_ or QMP_EVENT_KIND would be better? I am coding v2, which fully support event define in qapi-schema. There is another thing I hope to know your opinion: Should we support use enum as discriminator? { 'enum': 'QEvent', 'data': [ 'SHUTDOWN', 'POWERDOWN'] { 'type': 'QmpEventBase', 'data': { 'event': 'QEvent', 'timestamp': 'EventTimestamp' } } { 'Union': 'QmpEvent', 'base': 'QmpEventBase', 'discriminator': 'event', 'data': { 'SHUTDOWN' : 'EventShutdown', 'POWERDOWN' : 'EventPowerdown' } } By default 'QmpEvent' will generate a hidden enum type 'QmpEventKind'. but the hidden type define is needed by query-event, so there is two way to archieve it: 1 just use the hidden type in qapi-schema.json. 2 modified the script to support use predefined enum type. In my draft code, both can work, but which one do you prefer?