a575963da9
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
53 lines
1.8 KiB
C#
53 lines
1.8 KiB
C#
//-----------------------------------------------------------------------------
|
|
//
|
|
// Copyright (C) Microsoft Corporation. All Rights Reserved.
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
using System;
|
|
|
|
namespace Microsoft.Cci.Pdb {
|
|
internal class DbiModuleInfo {
|
|
internal DbiModuleInfo(BitAccess bits, bool readStrings) {
|
|
bits.ReadInt32(out opened);
|
|
section = new DbiSecCon(bits);
|
|
bits.ReadUInt16(out flags);
|
|
bits.ReadInt16(out stream);
|
|
bits.ReadInt32(out cbSyms);
|
|
bits.ReadInt32(out cbOldLines);
|
|
bits.ReadInt32(out cbLines);
|
|
bits.ReadInt16(out files);
|
|
bits.ReadInt16(out pad1);
|
|
bits.ReadUInt32(out offsets);
|
|
bits.ReadInt32(out niSource);
|
|
bits.ReadInt32(out niCompiler);
|
|
if (readStrings) {
|
|
bits.ReadCString(out moduleName);
|
|
bits.ReadCString(out objectName);
|
|
} else {
|
|
bits.SkipCString(out moduleName);
|
|
bits.SkipCString(out objectName);
|
|
}
|
|
bits.Align(4);
|
|
//if (opened != 0 || pad1 != 0) {
|
|
// throw new PdbException("Invalid DBI module. "+
|
|
// "(opened={0}, pad={1})", opened, pad1);
|
|
//}
|
|
}
|
|
|
|
internal int opened; // 0..3
|
|
internal DbiSecCon section; // 4..31
|
|
internal ushort flags; // 32..33
|
|
internal short stream; // 34..35
|
|
internal int cbSyms; // 36..39
|
|
internal int cbOldLines; // 40..43
|
|
internal int cbLines; // 44..57
|
|
internal short files; // 48..49
|
|
internal short pad1; // 50..51
|
|
internal uint offsets;
|
|
internal int niSource;
|
|
internal int niCompiler;
|
|
internal string moduleName;
|
|
internal string objectName;
|
|
}
|
|
}
|