public override void Write() { TypeDataWriter w = CreateWriter(LeafType.LF_VFTABLE); w.WriteIndexedType(Type); w.WriteIndexedType(BaseVfTable); w.WriteUInt32(OffsetInObjectLayout); w.WriteUInt32(NamesSize); foreach (string name in Names) { w.WriteCString(name); } w.WriteHeader(); }
public override void Write() { TypeDataWriter w = CreateWriter(LeafType.LF_ULONG); w.WriteUInt32(Value); w.WriteHeader(); }
public override void Write() { TypeDataWriter w = CreateWriter(LeafType.LF_POINTER); w.WriteIndexedType(UnderlyingType); w.WriteUInt32((uint)Attributes); w.WriteHeader(); }
public override void Write() { TypeDataWriter w = CreateWriter(LeafType.LF_CLASS); w.WriteUInt16(NumberOfElements); w.Write <TypeProperties>(FieldProperties); w.WriteUInt32(FieldIndex); w.WriteIndexedType(VShapeTableType); w.WriteVaryingType(StructSize); w.WriteCString(Name); w.WriteHeader(); }
public override void Write() { TypeDataWriter w = CreateWriter(LeafType.LF_MFUNCTION); w.WriteIndexedType(ReturnValueType); w.WriteIndexedType(ContainingClassType); w.WriteIndexedType(ThisPointerType); w.Write <CallingConvention>(CallingConvention); w.Write <FunctionAttributes>(Attributes); w.WriteUInt16(NumberOfParameters); w.WriteIndexedType(ArgumentListType); w.WriteUInt32(ThisAdjustor); w.WriteHeader(); }
public override void Write() { TypeDataWriter w = CreateWriter(LeafType.LF_METHODLIST); w.WriteUInt16((ushort)Attributes); w.WriteIndexedType(ProcedureTypeRecord); switch (Attributes.MethodProperties) { case MethodProperties.Intro: case MethodProperties.PureIntro: w.WriteUInt32(VBaseOffset); break; } w.WriteHeader(); }