GP-4625 - Modify dev PDB Dump script and add scripts to dump PDB mangled names; realign mangled name for complex type hierarchy

This commit is contained in:
ghizard 2024-05-24 07:55:28 -04:00
parent a29a59488a
commit cb3a6ced93
7 changed files with 322 additions and 36 deletions

View file

@ -32,6 +32,8 @@ public abstract class AbstractComplexMsType extends AbstractMsType {
protected RecordNumber fieldDescriptorListRecordNumber;
protected MsProperty property;
protected String name;
// Used by MsType and 19MsType; maybe by StMsType; not by 16MsType
protected String mangledName;
/**
* Constructor for this type.
@ -46,7 +48,7 @@ public abstract class AbstractComplexMsType extends AbstractMsType {
* Constructor for this type.
* @param pdb {@link AbstractPdb} to which this type belongs.
* @param count number of field elements
* @param fieldDescriptorListRecordNumber {@link RecordNumber} of field list
* @param fieldDescriptorListRecordNumber {@link RecordNumber} of field list
* @param property {@link MsProperty} of this type
* @param name the name of this type
*/
@ -100,6 +102,14 @@ public abstract class AbstractComplexMsType extends AbstractMsType {
return name;
}
/**
* Returns the mangled name within this complex type
* @return Mangled name
*/
public String getMangledName() {
return mangledName;
}
/**
* Returns the type name of this complex type.
* @return Type of the complex type.

View file

@ -31,7 +31,6 @@ public abstract class AbstractCompositeMsType extends AbstractComplexMsType {
protected RecordNumber vShapeTableRecordNumber; // Not used by union.
//TODO: has more... guessing below
protected BigInteger size;
protected String mangledName; // Used by MsType (not used by 16MsType or StMsType?)
/**
* Constructor for this type.
@ -69,14 +68,6 @@ public abstract class AbstractCompositeMsType extends AbstractComplexMsType {
this.vShapeTableRecordNumber = vShapeTableRecordNumber;
}
/**
* Returns the mangled name within this composite.
* @return Mangled name.
*/
public String getMangledName() {
return mangledName;
}
/**
* Returns the record number of the derived-from list of types.
* @return Record number of the derived-from list of types.

View file

@ -37,8 +37,6 @@ public class Enum19MsType extends AbstractEnumMsType {
public static final int PDB_ID = 0x160b;
protected String mangledName;
/**
* Constructor for this type.
* @param pdb {@link AbstractPdb} to which this type belongs.
@ -72,12 +70,4 @@ public class Enum19MsType extends AbstractEnumMsType {
return PDB_ID;
}
/**
* Returns the mangled name field
* @return Mangled name.
*/
public String getMangledName() {
return mangledName;
}
}

View file

@ -27,8 +27,6 @@ public class EnumMsType extends AbstractEnumMsType {
public static final int PDB_ID = 0x1507;
protected String mangledName;
/**
* Constructor for this type.
* @param pdb {@link AbstractPdb} to which this type belongs.
@ -62,12 +60,4 @@ public class EnumMsType extends AbstractEnumMsType {
return PDB_ID;
}
/**
* Returns the mangled name field
* @return Mangled name.
*/
public String getMangledName() {
return mangledName;
}
}