predicates.py
changeset 10613 8d9fe02387e3
parent 10612 84468b90e9c1
child 10651 9ca33768473c
equal deleted inserted replaced
10612:84468b90e9c1 10613:8d9fe02387e3
    22 
    22 
    23 import logging
    23 import logging
    24 from warnings import warn
    24 from warnings import warn
    25 from operator import eq
    25 from operator import eq
    26 
    26 
    27 from six import string_types
    27 from six import string_types, integer_types
    28 from six.moves import range
    28 from six.moves import range
    29 
    29 
    30 from logilab.common.deprecation import deprecated
    30 from logilab.common.deprecation import deprecated
    31 from logilab.common.registry import Predicate, objectify_predicate, yes
    31 from logilab.common.registry import Predicate, objectify_predicate, yes
    32 
    32 
   672         super(score_entity, self).__init__(mode=mode, once_is_enough=once_is_enough)
   672         super(score_entity, self).__init__(mode=mode, once_is_enough=once_is_enough)
   673         def intscore(*args, **kwargs):
   673         def intscore(*args, **kwargs):
   674             score = scorefunc(*args, **kwargs)
   674             score = scorefunc(*args, **kwargs)
   675             if not score:
   675             if not score:
   676                 return 0
   676                 return 0
   677             if isinstance(score, (int, long)):
   677             if isinstance(score, integer_types):
   678                 return score
   678                 return score
   679             return 1
   679             return 1
   680         self.score_entity = intscore
   680         self.score_entity = intscore
   681 
   681 
   682 
   682