From 9a881c5a8266fd36f5b3e8f5295d0416101244ed Mon Sep 17 00:00:00 2001 From: Steve Reinhardt Date: Thu, 20 Oct 2005 14:14:59 -0400 Subject: Minor tweak to isa_parser. arch/isa_parser.py: Derive Stack class directly from list. --HG-- extra : convert_revision : 4f09db4baec0bb2144d71ffad5ce53651e8c3ac6 --- arch/isa_parser.py | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/arch/isa_parser.py b/arch/isa_parser.py index eaef4b798..8f4c6bce7 100755 --- a/arch/isa_parser.py +++ b/arch/isa_parser.py @@ -794,20 +794,19 @@ def defFormat(id, params, code, lineno): ############## # Stack: a simple stack object. Used for both formats (formatStack) -# and default cases (defaultStack). +# and default cases (defaultStack). Simply wraps a list to give more +# stack-like syntax and enable initialization with an argument list +# (as opposed to an argument that's a list). -class Stack: - def __init__(self, initItem): - self.stack = [ initItem ] +class Stack(list): + def __init__(self, *items): + list.__init__(self, items) def push(self, item): - self.stack.append(item); - - def pop(self): - return self.stack.pop() + self.append(item); def top(self): - return self.stack[-1] + return self[-1] # The global format stack. formatStack = Stack(NoFormat()) -- cgit v1.2.3