/// <summary> /// Constructor, only factory can instantiates nodes. /// </summary> /// <param name="nodeId">[in] The id of the node.</param> /// <param name="factory">[in] Poiter to the Factory the node belongs to.</param> public Member(uint nodeId, Factory factory) : base(nodeId, factory) { m_accessibility = Types.AccessibilityKind.ackInternal; m_commentLines = 0; m_demangledName = 0; m_isCompilerGenerated = false; m_isStatic = false; m_language = Types.LanguageKind.lnkNotSet; m_mangledName = 0; m_aggregated = 0; belongsToContainer = new LinkedList <uint>(); compilationUnitContainer = new LinkedList <uint>(); m_declares = 0; hasCommentContainer = new LinkedList <uint>(); instanceContainer = new LinkedList <uint>(); isContainedInAssocContainer = new LinkedList <ListIteratorAssoc <Columbus.Lim.Asg.Nodes.Physical.File> .AssocEdge>(); m_languageVariant = 0; usesContainer = new LinkedList <uint>(); variantContainer = new LinkedList <uint>(); }
/// <summary> /// Loads the node. /// </summary> /// <param name="io">[in] The node is read from io.</param> /// <exception cref="Columbus.ColumbusIOException">Throws ColumbusIOException if there is something wrong with the file.</exception> public override void load(IO binIo) { base.load(binIo); byte boolValues = binIo.readUByte1(); m_isStatic = Convert.ToBoolean(boolValues & 1); boolValues >>= 1; m_isCompilerGenerated = Convert.ToBoolean(boolValues & 1); boolValues >>= 1; m_accessibility = (Types.AccessibilityKind)binIo.readUByte1(); m_commentLines = binIo.readUInt4(); m_demangledName = binIo.readUInt4(); m_language = (Types.LanguageKind)binIo.readUByte1(); m_mangledName = binIo.readUInt4(); m_aggregated = binIo.readUInt4(); m_declares = binIo.readUInt4(); m_languageVariant = binIo.readUInt4(); uint _id; _id = binIo.readUInt4(); while (_id != 0) { belongsToContainer.AddLast(_id); _id = binIo.readUInt4(); } _id = binIo.readUInt4(); while (_id != 0) { compilationUnitContainer.AddLast(_id); _id = binIo.readUInt4(); } _id = binIo.readUInt4(); while (_id != 0) { hasCommentContainer.AddLast(_id); _id = binIo.readUInt4(); } _id = binIo.readUInt4(); while (_id != 0) { instanceContainer.AddLast(_id); _id = binIo.readUInt4(); } _id = binIo.readUInt4(); while (_id != 0) { SourcePosition _ac = new SourcePosition(); _ac.load(binIo); ListIteratorAssoc <Columbus.Lim.Asg.Nodes.Physical.File> .AssocEdge isContainedInAc = new ListIteratorAssoc <Columbus.Lim.Asg.Nodes.Physical.File> .AssocEdge(); isContainedInAc.assocClass.acSourcePosition = _ac; isContainedInAc.id = _id; isContainedInAssocContainer.AddLast(isContainedInAc); _id = binIo.readUInt4(); } _id = binIo.readUInt4(); while (_id != 0) { usesContainer.AddLast(_id); _id = binIo.readUInt4(); } _id = binIo.readUInt4(); while (_id != 0) { variantContainer.AddLast(_id); _id = binIo.readUInt4(); } }