rqlrewrite.py
changeset 8748 f5027f8d2478
parent 8694 d901c36bcfce
child 9167 c05652b108ce
equal deleted inserted replaced
8747:c0d4244e5abc 8748:f5027f8d2478
    28 from yams import BadSchemaDefinition
    28 from yams import BadSchemaDefinition
    29 
    29 
    30 from logilab.common import tempattr
    30 from logilab.common import tempattr
    31 from logilab.common.graph import has_path
    31 from logilab.common.graph import has_path
    32 
    32 
    33 from cubicweb import Unauthorized, typed_eid
    33 from cubicweb import Unauthorized
    34 
    34 
    35 
    35 
    36 def add_types_restriction(schema, rqlst, newroot=None, solutions=None):
    36 def add_types_restriction(schema, rqlst, newroot=None, solutions=None):
    37     if newroot is None:
    37     if newroot is None:
    38         assert solutions is None
    38         assert solutions is None
   218             assert snippetvar in 'SOX'
   218             assert snippetvar in 'SOX'
   219             self.revvarmap[snippetvar] = (selectvar, i)
   219             self.revvarmap[snippetvar] = (selectvar, i)
   220             vi = {}
   220             vi = {}
   221             self.varinfos.append(vi)
   221             self.varinfos.append(vi)
   222             try:
   222             try:
   223                 vi['const'] = typed_eid(selectvar)
   223                 vi['const'] = int(selectvar)
   224                 vi['rhs_rels'] = vi['lhs_rels'] = {}
   224                 vi['rhs_rels'] = vi['lhs_rels'] = {}
   225             except ValueError:
   225             except ValueError:
   226                 try:
   226                 try:
   227                     vi['stinfo'] = sti = self.select.defined_vars[selectvar].stinfo
   227                     vi['stinfo'] = sti = self.select.defined_vars[selectvar].stinfo
   228                 except KeyError:
   228                 except KeyError: