[Checkins] SVN: Products.Five/trunk/ Now you can use the old registry with the new API for registerig components.

Florent Guillaume fg at nuxeo.com
Fri Jul 28 18:58:59 EDT 2006


Indeed :)


On 29 Jul 2006, at 00:39, Benji York wrote:

> Florent Guillaume wrote:
>> On 27 Jul 2006, at 16:15, Lennart Regebro wrote:
>>> Modified: Products.Five/trunk/site/localsite.py
>>> ===================================================================
>>> --- Products.Five/trunk/site/localsite.py	2006-07-27 13:51:25  
>>> UTC  (rev 69270)
>>> +++ Products.Five/trunk/site/localsite.py	2006-07-27 14:15:46  
>>> UTC  (rev 69271)
>>> @@ -16,12 +16,26 @@
>>> $Id$
>>> """
>>>
>>> +from operator import xor
>>> +def one_of_three(a, b, c):
>>> +    # Logical table for a three part test where only one can be  
>>> true:
>>> +    # 0 0 0: 0
>>> +    # 0 0 1: 1
>>> +    # 0 1 0: 1
>>> +    # 0 1 1: 0
>>> +    # 1 0 0: 1
>>> +    # 1 0 1: 0
>>> +    # 1 1 0: 0
>>> +    # 1 1 1: 0
>>> +    return xor(xor(a, b), c) and not (a and b and c)
>> Heh, boolean algebra is nice but sometimes integers convey the   
>> meaning much better:
>>    return int(a)+int(b)+int(c) == 1
>
> Hey, this is fun!  How about this:
>
> def only_one(*args):
>     return sum(bool(i) for i in args) == 1
> -- 
> Benji York
> Senior Software Engineer
> Zope Corporation

-- 
Florent Guillaume, Nuxeo (Paris, France)   Director of R&D
+33 1 40 33 71 59   http://nuxeo.com   fg at nuxeo.com





More information about the Checkins mailing list