1.1 --- a/micropython/__init__.py Mon Aug 18 01:40:18 2008 +0200
1.2 +++ b/micropython/__init__.py Mon Aug 18 01:45:23 2008 +0200
1.3 @@ -246,7 +246,7 @@
1.4 for module in self.get_modules():
1.5 for obj in module.all_objects:
1.6 if isinstance(obj, micropython.inspect.Class):
1.7 - compatible = [obj] + obj.descendants
1.8 + compatible = [obj] + list(obj.descendants)
1.9 compatible_dict = dict([(cls.full_name(), cls) for cls in compatible])
1.10 t.add(obj.full_name(), compatible_dict)
1.11
2.1 --- a/micropython/ast.py Mon Aug 18 01:40:18 2008 +0200
2.2 +++ b/micropython/ast.py Mon Aug 18 01:45:23 2008 +0200
2.3 @@ -369,6 +369,7 @@
2.4 originally came from.
2.5 """
2.6
2.7 + print instruction
2.8 return (
2.9 isinstance(instruction.input, LoadTemp) and isinstance(instruction, StoreTemp) and
2.10 instruction.input.attr == instruction.attr) or (
2.11 @@ -564,8 +565,9 @@
2.12 if self._should_optimise_temp_storage() and \
2.13 self._have_temp_compatible_access():
2.14
2.15 + removed = self.active
2.16 self.remove_active_value()
2.17 - return self.active
2.18 + return removed
2.19 else:
2.20 return self.get_temp()
2.21
3.1 --- a/rsvp.py Mon Aug 18 01:40:18 2008 +0200
3.2 +++ b/rsvp.py Mon Aug 18 01:45:23 2008 +0200
3.3 @@ -58,7 +58,7 @@
3.4
3.5 "A really simple virtual processor."
3.6
3.7 - def __init__(self, memory, objtable, paramtable, pc=None, debug=0):
3.8 + def __init__(self, memory, objtable, paramtable, clstable, pc=None, debug=0):
3.9
3.10 """
3.11 Initialise the processor with a 'memory' (a list of values containing
3.12 @@ -68,6 +68,7 @@
3.13 self.memory = memory
3.14 self.objtable = objtable
3.15 self.paramtable = paramtable
3.16 + self.clstable = clstable
3.17 self.pc = pc or 0
3.18 self.debug = debug
3.19
3.20 @@ -284,16 +285,14 @@
3.21
3.22 def CheckFrame(self): pass
3.23
3.24 + def CheckSelf(self): pass
3.25 +
3.26 def LoadCallable(self): pass
3.27
3.28 def LoadContext(self):
3.29 context, ref = self.value
3.30 self.push((None, context))
3.31
3.32 - def CheckSelf(self): pass
3.33 -
3.34 - def CheckContext(self): pass
3.35 -
3.36 def Return(self):
3.37 self.pc = self.pull_pc()
3.38