rtags.py
branchstable
changeset 5843 85c4d5334f2c
parent 5424 8ecbcbff9777
child 6240 fd0cbb801007
equal deleted inserted replaced
5842:10efd227648e 5843:85c4d5334f2c
    80 
    80 
    81     def clear(self):
    81     def clear(self):
    82         self._tagdefs.clear()
    82         self._tagdefs.clear()
    83 
    83 
    84     def _get_keys(self, stype, rtype, otype, tagged):
    84     def _get_keys(self, stype, rtype, otype, tagged):
    85         keys = [('*', rtype, '*', tagged),
    85         keys = []
    86                 ('*', rtype, otype, tagged),
    86         if '*' not in (stype, otype):
    87                 (stype, rtype, '*', tagged),
    87             keys.append(('*', rtype, '*', tagged))
    88                 (stype, rtype, otype, tagged)]
    88         if '*' != stype:
    89         if stype == '*' or otype == '*':
    89             keys.append(('*', rtype, otype, tagged))
    90             keys.remove( ('*', rtype, '*', tagged) )
    90         if '*' != otype:
    91             if stype == '*':
    91             keys.append((stype, rtype, '*', tagged))
    92                 keys.remove( ('*', rtype, otype, tagged) )
    92         keys.append((stype, rtype, otype, tagged))
    93             if otype == '*':
       
    94                 keys.remove( (stype, rtype, '*', tagged) )
       
    95         return keys
    93         return keys
    96 
    94 
    97     def init(self, schema, check=True):
    95     def init(self, schema, check=True):
    98         # XXX check existing keys against schema
    96         # XXX check existing keys against schema
    99         if check:
    97         if check: