On 10/02/2015 10:07 AM, Markus Armbruster wrote: >>>> RFC: I used a class-level static flag to track whether we expected >>>> 'info is None' when creating a QAPISchemaEntity. This is gross, >>>> because the flag will only be set on the first QAPISchema() instance >>>> (it works because none of our client scripts ever instantiate more >>>> than one schema). But the only other thing I could think of would >>>> be passing the QAPISchema instance into the constructor for each >>>> QAPISchemaEntity, which is a lot of churn. Any better ideas on how >>>> best to do the assertion, or should I just drop it? >>> >>> I'd check in QAPISchema._def_entity(). >> >> Ah, instead of an assert in QAPISchemaEntity.__init__() (which requires >> a leaky abstraction), instead write the assert into QAPISchema (so the >> flag can now be instance-local). Makes sense; I'll play with the idea. > > :)
Oh, and this means accessing QAPISchemaEntity.info outside of the class, which absolutely kills off my idea of renaming it to _info for hiding purposes (so patch 12/12 is now officially gone). -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
