示例#1
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            UnderlyingType = r.ReadIndexedType32Lazy();
            Name           = r.ReadCString();
        }
示例#2
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            r.ReadUInt16();             //padding
            NestedTypeDef = r.ReadIndexedType32Lazy();
            Name          = r.ReadCString();
        }
示例#3
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            NumberOfOccurrences = r.ReadUInt16();
            MethodListRecord    = r.ReadIndexedType32Lazy();
            Name = r.ReadCString();
        }
示例#4
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            Attributes = new FieldAttributes(r.ReadUInt16());
            TypeRecord = r.ReadIndexedType32Lazy();
            Name       = r.ReadCString();
        }
示例#5
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            Attributes = new FieldAttributes(r.ReadUInt16());
            Value      = r.ReadVaryingType(out uint ILeafSize);
            FieldName  = r.ReadCString();
        }
示例#6
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            NumElements    = r.ReadUInt16();
            Properties     = r.ReadFlagsEnum <TypeProperties>();
            UnderlyingType = r.ReadIndexedTypeLazy();
            FieldType      = r.ReadIndexedTypeLazy();
            Name           = r.ReadCString();
        }
示例#7
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            NumberOfElements = r.ReadUInt16();
            Properties       = r.ReadFlagsEnum <TypeProperties>();
            FieldType        = r.ReadIndexedType32Lazy();

            StructSize = r.ReadVaryingType(out uint dataSize);
            Name       = r.ReadCString();
        }
示例#8
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            Attributes = new FieldAttributes(r.ReadUInt16());
            FieldType  = r.ReadIndexedTypeLazy();

            Offset = r.ReadVaryingType(out uint dataSize);

            Name = r.ReadCString();
        }
示例#9
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            ElementType  = r.ReadIndexedTypeLazy <T>();
            IndexingType = r.ReadIndexedTypeLazy <T>();

            Size = r.ReadVaryingType(out uint dataSize);

            Name = r.ReadCString();
        }
示例#10
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            Attributes    = new FieldAttributes(r.ReadUInt16());
            ProcedureType = r.ReadIndexedTypeLazy();

            switch (Attributes.MethodProperties)
            {
            case MethodProperties.Intro:
            case MethodProperties.PureIntro:
                VBaseOffset = r.ReadUInt32();
                break;

            default:
                VBaseOffset = 0;
                break;
            }

            Name = r.ReadCString();
        }
示例#11
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            Type                 = r.ReadIndexedTypeLazy();
            BaseVfTable          = r.ReadIndexedTypeLazy();
            OffsetInObjectLayout = r.ReadUInt32();
            NamesSize            = r.ReadUInt32();

            List <string> lstNames = new List <string>();

            uint read     = 0;
            long savedPos = stream.Position;

            while (read < NamesSize)
            {
                lstNames.Add(r.ReadCString());
                read    += (uint)(stream.Position - savedPos);
                savedPos = stream.Position;
            }
            Names = lstNames.ToArray();
        }