[PATCH] Factor out duplicate code
Harald Meland
harald.meland at usit.uio.no
Wed Oct 12 09:30:10 BST 2005
[Michael Ellerman]
> This is a bit nit-picky, but a more Pythonish way to do the above is:
>
> @staticmethod
> def create(kind, file_id, name, parent_id):
> """Return an inventory entry of specified kind"""
> try:
> klass = InventoryEntry.versionable_kinds[kind]
> return klass(file_id, name, parent_id)
> except KeyError:
> raise BadFileKindError("unknown kind %r" % kind)
Even more nitpicky, but the above code risks eating any KeyErrors
raised in klass.__init__(). Use
try:
klass = InventoryEntry.versionable_kinds[kind]
except KeyError:
raise BadFileKindError("unknown kind %r" % kind)
else:
return klass(file_id, name, parent_id)
to avoid that.
--
Harald
More information about the bazaar
mailing list