On Sat, Dec 30, 2017 at 8:50 PM, Franklin? Lee <leewangzhong+python@gmail.com> wrote:Paddy might want something like this:
- For existing APIs which take int or IntFlag flags, allow them to
also take a set (or perhaps any collection) of flags.
- In new APIs, take sets of Enum flags, and don't make them IntFlag.
- Documentation should show preference toward using sets of Enum
flags. Tutorials should pass sets.I'm not keen on this recommendation. An argument that takes a Set[Foo] would mean that in order to specify:- no flags: you'd have to pass set() -- you can't use {} since that's an empty dict, not an empty set- one flag: you'd have to pass {Foo.BAR} rather than just Foo.BAR- two flags: you'd have to pass {Foo.BAR, Foo.BAZ} rather than Foo.BAR | Foo.BAZI think for each of these the proposal would be strictly worse than the current convention.----Guido van Rossum (python.org/~guido)