Example #1
0
        private int DeserializeAbbreviatedData(LocationEntryStructure structureType, LocationEntryStructure byteSize, LocationEntryStructure uint16Size)
        {
            if ((structureType & byteSize) == byteSize)
            {
                return(this.reader.ReadByte());
            }
            else if ((structureType & uint16Size) == uint16Size)
            {
                return(this.reader.ReadUInt16());
            }

            return(this.reader.ReadInt32());
        }
Example #2
0
 private WordLocation DeserializeLocationData(WordLocation previous, LocationEntryStructure structureType)
 {
     return(new WordLocation(
                previous.WordIndex + this.DeserializeAbbreviatedData(
                    structureType,
                    LocationEntryStructure.WordIndexByte,
                    LocationEntryStructure.WordIndexUInt16),
                previous.Start + this.DeserializeAbbreviatedData(
                    structureType,
                    LocationEntryStructure.WordStartByte,
                    LocationEntryStructure.WordStartUInt16),
                ((structureType & LocationEntryStructure.LengthSameAsLast) == LocationEntryStructure.LengthSameAsLast) ?
                previous.Length :
                this.reader.ReadUInt16()));
 }