/// <summary> /// Initializes a new instance of the <see cref="CvPublicSymbol3"/> struct. /// </summary> /// <param name="length">The length of the symbol in the stream.</param> /// <param name="type">The type of the CodeView entry.</param> /// <param name="reader">The reader used to access the stream.</param> internal CvPublicSymbol3(ushort length, CvEntryType type, BinaryReader reader) : base(length, type) { this.symtype = reader.ReadInt32(); this.offset = reader.ReadInt32(); this.segment = reader.ReadInt16(); this.name = CvUtil.ReadString(reader); }
/// <summary> /// Initializes a new instance of the <see cref="CvPublicSymbol3"/> struct. /// </summary> /// <param name="length">The length of the symbol in the stream.</param> /// <param name="type">The type of the CodeView entry.</param> /// <param name="reader">The reader used to access the stream.</param> public CvFunctionSymbol3(ushort length, CvEntryType type, BinaryReader reader) : base(length, type) { symtype = reader.ReadInt32(); offset = reader.ReadInt32(); segment = reader.ReadInt16(); name = CvUtil.ReadString(reader); }
/// <summary> /// Reads the specified reader. /// </summary> /// <param name="reader">The reader.</param> public static CvSymbol Read(BinaryReader reader) { CvSymbol result; ushort len = reader.ReadUInt16(); CvEntryType type = (CvEntryType)reader.ReadUInt16(); switch (type) { case CvEntryType.PublicSymbol3: result = new CvPublicSymbol3(len, type, reader); break; case CvEntryType.PublicFunction13: result = new CvFunctionSymbol3(len, type, reader); break; default: result = new CvSymbol(len, type); break; } return(result); }
/// <summary> /// Initializes a new instance of the <see cref="CvSymbol"/> class. /// </summary> /// <param name="length">The length of the symbol in the stream.</param> /// <param name="type">The type of the CodeView entry.</param> protected CvSymbol(ushort length, CvEntryType type) { this.length = length; this.type = type; }
/// <summary> /// Initializes a new instance of the <see cref="CvSymbol"/> class. /// </summary> /// <param name="length">The length of the symbol in the stream.</param> /// <param name="type">The type of the CodeView entry.</param> protected CvSymbol(ushort length, CvEntryType type) { Length = length; Type = type; }