Make ConfigNodes as intermediate containers work again.
python/m5/config.py: move the type stuff into the Node constructor and only try to grab self.type if the realtype is a SimObject --HG-- extra : convert_revision : 00f6ece47e3812f67f9e1f062fe9c060bd6dd1cf
This commit is contained in:
parent
cf05fa476d
commit
fa1650a08e
1 changed files with 6 additions and 3 deletions
|
@ -449,7 +449,7 @@ class MetaConfigNode(type):
|
||||||
|
|
||||||
# Print instance info to .ini file.
|
# Print instance info to .ini file.
|
||||||
def instantiate(cls, name, parent = None):
|
def instantiate(cls, name, parent = None):
|
||||||
instance = Node(name, cls, cls.type, parent, isParamContext(cls))
|
instance = Node(name, cls, parent, isParamContext(cls))
|
||||||
|
|
||||||
if hasattr(cls, 'check'):
|
if hasattr(cls, 'check'):
|
||||||
cls.check()
|
cls.check()
|
||||||
|
@ -584,10 +584,13 @@ class NodeParam(object):
|
||||||
|
|
||||||
class Node(object):
|
class Node(object):
|
||||||
all = {}
|
all = {}
|
||||||
def __init__(self, name, realtype, type, parent, paramcontext):
|
def __init__(self, name, realtype, parent, paramcontext):
|
||||||
self.name = name
|
self.name = name
|
||||||
self.realtype = realtype
|
self.realtype = realtype
|
||||||
self.type = type
|
if isSimObject(realtype):
|
||||||
|
self.type = realtype.type
|
||||||
|
else:
|
||||||
|
self.type = None
|
||||||
self.parent = parent
|
self.parent = parent
|
||||||
self.children = []
|
self.children = []
|
||||||
self.child_names = {}
|
self.child_names = {}
|
||||||
|
|
Loading…
Reference in a new issue