diff options
Diffstat (limited to 'third_party/ply/yacc.py')
-rw-r--r-- | third_party/ply/yacc.py | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/third_party/ply/yacc.py b/third_party/ply/yacc.py index f70439ea5e..9824217252 100644 --- a/third_party/ply/yacc.py +++ b/third_party/ply/yacc.py @@ -195,8 +195,11 @@ class YaccProduction: self.lexer = None self.parser= None def __getitem__(self,n): - if n >= 0: return self.slice[n].value - else: return self.stack[n].value + if type(n) is slice: + return [s.value for s in self.slice[n]] + else: + if n >= 0: return self.slice[n].value + else: return self.stack[n].value def __setitem__(self,n,v): self.slice[n].value = v |