Enable proxies (Self/Parent) for specifying ports.

Significant revamp of Port code.
Some cleanup of SimObject code too, particularly to
make the SimObject and MetaSimObject implementations of
__setattr__ more consistent.
Unproxy code split out of print_ini().

src/python/m5/multidict.py:
    Make get() return None by default, to match semantics
    of built-in dictionary objects.

--HG--
extra : convert_revision : db73b6cdd004a82a08b2402afd1e16544cb902a4
This commit is contained in:
Steve Reinhardt
2006-09-05 22:04:34 -07:00
parent 6c7a490c2b
commit 545cbec5f7
8 changed files with 248 additions and 132 deletions

View File

@@ -41,7 +41,8 @@ class BaseProxy(object):
def __setattr__(self, attr, value):
if not attr.startswith('_'):
raise AttributeError, 'cannot set attribute on proxy object'
raise AttributeError, \
"cannot set attribute '%s' on proxy object" % attr
super(BaseProxy, self).__setattr__(attr, value)
# support multiplying proxies by constants