schema.py
branch3.5
changeset 3240 8604a15995d1
parent 2967 e7d348134006
child 3275 5247789df541
equal deleted inserted replaced
3239:1ceac4cd4fb7 3240:8604a15995d1
   640             raise RQLSyntaxError(expression)
   640             raise RQLSyntaxError(expression)
   641         for mainvar in mainvars.split(','):
   641         for mainvar in mainvars.split(','):
   642             if len(self.rqlst.defined_vars[mainvar].references()) <= 2:
   642             if len(self.rqlst.defined_vars[mainvar].references()) <= 2:
   643                 _LOGGER.warn('You did not use the %s variable in your RQL '
   643                 _LOGGER.warn('You did not use the %s variable in your RQL '
   644                              'expression %s', mainvar, self)
   644                              'expression %s', mainvar, self)
       
   645         # syntax tree used by read security (inserted in queries when necessary
       
   646         self.snippet_rqlst = parse(self.minimal_rql, print_errors=False).children[0]
   645 
   647 
   646     def __str__(self):
   648     def __str__(self):
   647         return self.full_rql
   649         return self.full_rql
   648     def __repr__(self):
   650     def __repr__(self):
   649         return '%s(%s)' % (self.__class__.__name__, self.full_rql)
   651         return '%s(%s)' % (self.__class__.__name__, self.full_rql)
   765 
   767 
   766 
   768 
   767 class ERQLExpression(RQLExpression):
   769 class ERQLExpression(RQLExpression):
   768     def __init__(self, expression, mainvars=None, eid=None):
   770     def __init__(self, expression, mainvars=None, eid=None):
   769         RQLExpression.__init__(self, expression, mainvars or 'X', eid)
   771         RQLExpression.__init__(self, expression, mainvars or 'X', eid)
   770         # syntax tree used by read security (inserted in queries when necessary
       
   771         self.snippet_rqlst = parse(self.minimal_rql, print_errors=False).children[0]
       
   772 
   772 
   773     @property
   773     @property
   774     def full_rql(self):
   774     def full_rql(self):
   775         rql = self.minimal_rql
   775         rql = self.minimal_rql
   776         rqlst = getattr(self, 'rqlst', None) # may be not set yet
   776         rqlst = getattr(self, 'rqlst', None) # may be not set yet