class _DecUserExtension(_DecBase): def __init__(self, RawData): _DecBase.__init__(self, RawData) self.ItemObject = DecUserExtensionObject(RawData.Filename) self._Headers = [] self._CurItems = [] def BlockStart(self): self._CurItems = [] for Header in self._RawData.CurrentScope: if Header in self._Headers: self._LoggerError(ST.ERR_DECPARSE_UE_DUPLICATE) else: self._Headers.append(Header) for Item in self._CurItems: if Item.UserId == Header[1] and Item.IdString == Header[2]: Item.ArchAndModuleType.append(Header[3]) break else: Item = DecUserExtensionItemObject() Item.UserId = Header[1] Item.IdString = Header[2] Item.ArchAndModuleType.append(Header[3]) self._CurItems.append(Item) self.ItemObject.AddItem(Item, None) self._LocalMacro = {} def _ParseItem(self): Line = self._RawData.CurrentLine Item = None for Item in self._CurItems: if Item.UserString: Item.UserString = '\n'.join([Item.UserString, Line]) else: Item.UserString = Line return Item
def __init__(self, RawData): _DecBase.__init__(self, RawData) self.ItemObject = DecUserExtensionObject(RawData.Filename) self._Headers = [] self._CurItems = []