On Thu, Apr 25, 2013 at 5:29 AM, Antoine Pitrou <solip...@pitrou.net> wrote:
> Le Thu, 25 Apr 2013 05:21:50 -0700, > Eli Bendersky <eli...@gmail.com> a écrit : > > > > > > > or: > > > > > > >>> Colors(1) > > > <EnumValue: Colors.red [value=1]> > > > > > > > > This syntax was considered initially but then rejected because it's > > confusing, and there already exists a way to lookup by value > > (Colors[1]). > > Well, it works in latest flufl.enum. Is there a difference between the > PEP and the implementation. > It produces a deprecation warning in flufl.enum because flufl.enum specifically supported this earlier. It should not be supported in the stdlib implementation. The __call__ syntax has been repurposed for the convenience API: >>> Animals = Enum('Animals', 'ant bee cat dog') >>> Animals <Animals {ant: 1, bee: 2, cat: 3, dog: 4}> >>> Animals.ant <EnumValue: Animals.ant [value=1]> >>> Animals.ant.value 1 The aforementioned deprecated syntax refers to __call__ with a single arguments (the convenience API by definition requires more than one). Eli
_______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com