Changeset 571

Show
Ignore:
Timestamp:
07/13/08 10:21:51 (3 months ago)
Author:
athomas
Message:

Allow variables nodes with pre-existing variables to execute correctly.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • cly/trunk/cly/builder.py

    r568 r571  
    843843 
    844844    def valid(self, context): 
    845         if self.traversals != 1 or \ 
    846                 (self.traversals == 1 and self.name not in context.vars) or \ 
    847                 len(context.vars.get(self.name, [])) < self.traversals: 
    848             return Node.valid(self, context) 
     845        valid = Node.valid(self, context) 
     846        if self.traversals == 1: 
     847            return valid 
     848        if self.traversals != 1: 
     849            return valid 
     850        if len(context.vars.get(self.name, [])) < self.traversals: 
     851            return valid 
    849852        return False 
    850853 
  • cly/trunk/cly/interactive.py

    r557 r571  
    286286        else: 
    287287            parser = grammar_or_parser 
     288            assert not data, '"data" ignored because a Parser was passed' 
    288289 
    289290        self.parser = parser 
    290         self.data = data 
    291291        self.exceptions = exceptions or (lambda *a, **kw: True) 
    292292