Esempio n. 1
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            ReturnValueType   = r.ReadIndexedTypeLazy();
            CallingConvention = r.ReadEnum <CallingConvention>();
            r.ReadByte();             //reserved
            NumberOfParameters = r.ReadUInt16();
            ArgumentListType   = r.ReadIndexedTypeLazy();
        }
Esempio n. 2
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            NumElements    = r.ReadUInt16();
            Properties     = r.ReadFlagsEnum <TypeProperties>();
            UnderlyingType = r.ReadIndexedTypeLazy();
            FieldType      = r.ReadIndexedTypeLazy();
            Name           = r.ReadCString();
        }
Esempio n. 3
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();
        }
Esempio n. 4
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            ReturnValueType     = r.ReadIndexedTypeLazy();
            ContainingClassType = r.ReadIndexedTypeLazy();
            ThisPointerType     = r.ReadIndexedTypeLazy();
            CallingConvention   = r.ReadEnum <CallingConvention>();
            Attributes          = r.ReadFlagsEnum <FunctionAttributes>();
            NumberOfParameters  = r.ReadUInt16();
            ArgumentListType    = r.ReadIndexedTypeLazy();
            ThisAdjustor        = r.ReadUInt32();
        }
Esempio n. 5
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            Attributes             = new FieldAttributes(r.ReadUInt16());
            VirtualBaseClassType   = r.ReadIndexedTypeLazy();
            VirtualBasePointerType = r.ReadIndexedTypeLazy();


            //virtual base pointer offset from address point
            OffsetFromAddress = r.ReadVaryingType(out uint dynSize1);
            //virtual base offset from vbtable
            OffsetFromTable = r.ReadVaryingType(out uint dynSize2);
        }
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            NumberOfElements = r.ReadUInt16();
            FieldProperties  = r.ReadFlagsEnum <TypeProperties>();
            FieldIndex       = r.ReadUInt32();
            DerivedType      = r.ReadIndexedTypeLazy();
            VShapeTableType  = r.ReadIndexedTypeLazy();

            StructSize = r.ReadVaryingType(out uint dataSize);

            Name = r.ReadCString();
        }
Esempio n. 7
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            ModifiedType = r.ReadIndexedTypeLazy();
            Flags        = r.ReadFlagsEnum <CVModifier>();
        }
Esempio n. 8
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            UnderlyingType = r.ReadIndexedTypeLazy();
            Name           = r.ReadCString();
        }
Esempio n. 9
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            UnderlyingType = r.ReadIndexedTypeLazy();
            Attributes     = new PointerAttributes(r.ReadUInt32());
        }
Esempio n. 10
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            r.ReadUInt16();             //padding
            PointerType = r.ReadIndexedTypeLazy();
        }
Esempio n. 11
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            r.ReadUInt16();             //padding
            NestedTypeDef = r.ReadIndexedTypeLazy();
            Name          = r.ReadCString();
        }
Esempio n. 12
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            Attributes = new FieldAttributes(r.ReadUInt16());
            TypeRecord = r.ReadIndexedTypeLazy();
            Name       = r.ReadCString();
        }
Esempio n. 13
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            NumberOfOccurrences = r.ReadUInt16();
            MethodListRecord    = r.ReadIndexedTypeLazy();
            Name = r.ReadCString();
        }
Esempio n. 14
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            Type     = r.ReadIndexedTypeLazy();
            Length   = r.ReadByte();
            Position = r.ReadByte();
        }
Esempio n. 15
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

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

            Offset = r.ReadVaryingType(out uint dataSize);
        }
Esempio n. 16
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            NumberOfArguments = r.ReadUInt16();
            r.ReadUInt16();             //padding
            ArgumentTypes = Enumerable.Range(1, NumberOfArguments)
                            .Select(_ => r.ReadIndexedTypeLazy())
                            .ToArray();
        }
Esempio n. 17
0
        public LF_ARGLIST(Context pdb, Stream stream)
        {
            TypeDataReader r = new TypeDataReader(pdb, stream);

            NumberOfArguments = r.ReadUInt16();
            r.ReadUInt16();             //padding
            ArgumentTypes = Enumerable.Range(1, NumberOfArguments)
                            .Select(_ => r.ReadIndexedTypeLazy())
                            .ToArray();
        }
Esempio n. 18
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();
        }
Esempio n. 19
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

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

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

            default:
                VBaseOffset = 0;
                break;
            }
        }
Esempio n. 20
0
        public override void Read()
        {
            TypeDataReader r = CreateReader();

            Referenced = r.ReadIndexedTypeLazy();
        }