Re: [PATCH 3/6] stg mail: make __send_message do more
- From
Karl Wiberg <kha@treskal.com>
- Date
- Dec 1, 2009, 07:26 UTC
- Message-ID
- <b8197bcb0911302326w2fcda7dfi520159b25ecd18d0@mail.gmail.com>
- In-Reply-To
- <20091130235935.GK12733@ldl.fc.hp.com>
On Tue, Dec 1, 2009 at 12:59 AM, Alex Chiang <achiang@hp.com> wrote:
Show 13 quoted lines
> * Karl Wiberg <kha@treskal.com>:
>
> > You could consolidate the two dictionaries like this, to avoid
> > making the same choice twice and make the code more pleasant to
> > read:
> >
> > (build, outstr) = { 1: (__build_cover, 'the cover message'), 4: (__build_message, 'patch "%s"' % args[0]) }
>
> Hm, I don't think that's valid. I ended up doing something like
> this:
>
> d = { 'cover': (__build_cover, 'the cover message'), 'patch': (__build_message, 'patch "%s"' % args[0]) }
> (build, outstr) = d[type]Duh. That's what I get for posting untested code. It should be
(build, outstr) = { 1: (__build_cover, 'the cover message'), 4: (__build_message, 'patch "%s"' % args[0]) }[len(args)]
That is, we create a dictionary only to immediately use it once, without ever explicitly storing a reference to it.
-- Karl Wiberg, kha@treskal.com subrabbit.wordpress.com www.treskal.com/kalle