Example #1
0
        public static DebugLineEntry[] From(BinaryReader rd, SectionEntry header)
        {
            if (header.Size % Size != 0)
            {
                throw new Exception("invalid debug line table size");
            }
            var count   = header.Size / Size;
            var entries = new DebugLineEntry[count];

            for (var i = 0; i < count; i++)
            {
                var entry = new DebugLineEntry();
                entry.Address = rd.ReadUInt32();
                entry.Line    = rd.ReadUInt32();
                entries[i]    = entry;
            }
            return(entries);
        }
Example #2
0
 public SmxDebugLinesTable(FileHeader file, SectionEntry header)
     : base(file, header)
 {
     entries_ = DebugLineEntry.From(file.SectionReader(header), header);
 }
Example #3
0
 public static DebugLineEntry[] From(BinaryReader rd, SectionEntry header)
 {
     if (header.Size % Size != 0)
         throw new Exception("invalid debug line table size");
     var count = header.Size / Size;
     var entries = new DebugLineEntry[count];
     for (var i = 0; i < count; i++)
     {
         var entry = new DebugLineEntry();
         entry.Address = rd.ReadUInt32();
         entry.Line = rd.ReadUInt32();
         entries[i] = entry;
     }
     return entries;
 }