Hi Michael, On Wed, Apr 24, 2013 at 11:46:25AM -0500, mdroth wrote: > On Thu, Apr 25, 2013 at 12:08:05AM +0800, Amos Kong wrote: > > Currently we can only use ['String'] to add string to a list, > > it contains some additional JSON structure. > > "multicast": [ > > { > > "str": "01:80:c2:00:00:21" > > }, > > { > > "str": "00:00:00:00:00:00" > > } > > ] > > > > This patch adds struct strList and visit function, we can use ['str'] in > > schema file. > > > > "multicast": [ > > "01:00:5e:00:00:01", > > "33:33:ff:12:34:57" > > ] > > > > V2: remove ugly #ifndef, add forward declaration in qapi-types.h, > > and define the struct in include/qapi/visitor.h (Paolo) > > > > Signed-off-by: Amos Kong <ak...@redhat.com> > > Sorry for the delay in getting back to you, I started to respond last > week and ended up hacking something up that take a different approach. > > Namely: we don't hardcode visit_type_strList(), but instead teach the > qapi code generators about native types we currently allow in schemas > ('str', 'int', 'number', 'bool') and have them handle code generation > for these like they would for any user-defined type.
It's better. > This approach works too, but I think this solution is more complete. > I'm still working out some bits with the unit tests but I've pushed my > WIP here for reference: > > https://github.com/mdroth/qemu/commits/qapi-native-lists > > Please give that a shot. Your patchset looks good to me, I only added some trivial comments on github. -- Amos.