Add p prefix to types
This commit is contained in:
parent
ec896da8ab
commit
d6ba1fa2d5
|
@ -41,18 +41,19 @@ namespace de4dot.renamer {
|
||||||
if (elementType is GenericParameter)
|
if (elementType is GenericParameter)
|
||||||
return genericParamNameCreator.create();
|
return genericParamNameCreator.create();
|
||||||
|
|
||||||
var name = elementType.FullName;
|
|
||||||
NameCreator nc;
|
NameCreator nc;
|
||||||
if (typeNames.TryGetValue(name, out nc))
|
var typeFullName = typeRef.FullName;
|
||||||
|
if (typeNames.TryGetValue(typeFullName, out nc))
|
||||||
return nc.create();
|
return nc.create();
|
||||||
|
|
||||||
|
var name = elementType.FullName;
|
||||||
var parts = name.Replace('/', '.').Split(new char[] { '.' });
|
var parts = name.Replace('/', '.').Split(new char[] { '.' });
|
||||||
var newName = parts[parts.Length - 1];
|
var newName = parts[parts.Length - 1];
|
||||||
int tickIndex = newName.LastIndexOf('`');
|
int tickIndex = newName.LastIndexOf('`');
|
||||||
if (tickIndex > 0)
|
if (tickIndex > 0)
|
||||||
newName = newName.Substring(0, tickIndex);
|
newName = newName.Substring(0, tickIndex);
|
||||||
|
|
||||||
return addTypeName(name, newName, prefix).create();
|
return addTypeName(typeFullName, newName, prefix).create();
|
||||||
}
|
}
|
||||||
|
|
||||||
string getPrefix(TypeReference typeRef) {
|
string getPrefix(TypeReference typeRef) {
|
||||||
|
@ -64,7 +65,7 @@ namespace de4dot.renamer {
|
||||||
return prefix;
|
return prefix;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected INameCreator addTypeName(string fullName, string newName, string prefix = "") {
|
protected INameCreator addTypeName(string fullName, string newName, string prefix) {
|
||||||
newName = fixName(prefix, newName);
|
newName = fixName(prefix, newName);
|
||||||
|
|
||||||
var name2 = " " + newName;
|
var name2 = " " + newName;
|
||||||
|
@ -96,22 +97,39 @@ namespace de4dot.renamer {
|
||||||
|
|
||||||
class VariableNameCreator : TypeNames {
|
class VariableNameCreator : TypeNames {
|
||||||
public VariableNameCreator() {
|
public VariableNameCreator() {
|
||||||
addTypeName("System.Boolean", "bool");
|
initTypeName("System.Boolean", "bool");
|
||||||
addTypeName("System.Byte", "byte");
|
initTypeName("System.Byte", "byte");
|
||||||
addTypeName("System.Char", "char");
|
initTypeName("System.Char", "char");
|
||||||
addTypeName("System.Double", "double");
|
initTypeName("System.Double", "double");
|
||||||
addTypeName("System.Int16", "short");
|
initTypeName("System.Int16", "short");
|
||||||
addTypeName("System.Int32", "int");
|
initTypeName("System.Int32", "int");
|
||||||
addTypeName("System.Int64", "long");
|
initTypeName("System.Int64", "long");
|
||||||
addTypeName("System.IntPtr", "intptr");
|
initTypeName("System.IntPtr", "intptr", "IntPtr");
|
||||||
addTypeName("System.SByte", "sbyte");
|
initTypeName("System.SByte", "sbyte", "SByte");
|
||||||
addTypeName("System.Single", "float");
|
initTypeName("System.Single", "float");
|
||||||
addTypeName("System.String", "string");
|
initTypeName("System.String", "string");
|
||||||
addTypeName("System.UInt16", "ushort");
|
initTypeName("System.UInt16", "ushort", "UShort");
|
||||||
addTypeName("System.UInt32", "uint");
|
initTypeName("System.UInt32", "uint", "UInt");
|
||||||
addTypeName("System.UInt64", "ulong");
|
initTypeName("System.UInt64", "ulong", "ULong");
|
||||||
addTypeName("System.UIntPtr", "uintptr");
|
initTypeName("System.UIntPtr", "uintptr", "UIntPtr");
|
||||||
addTypeName("System.Decimal", "decimal");
|
initTypeName("System.Decimal", "decimal");
|
||||||
|
}
|
||||||
|
|
||||||
|
void initTypeName(string fullName, string newName, string ptrName = null) {
|
||||||
|
if (ptrName == null)
|
||||||
|
ptrName = upperFirst(newName);
|
||||||
|
initTypeName2(fullName, "", newName);
|
||||||
|
initTypeName2(fullName + "[]", "", newName);
|
||||||
|
initTypeName2(fullName + "[][]", "", newName);
|
||||||
|
initTypeName2(fullName + "[][][]", "", newName);
|
||||||
|
initTypeName2(fullName + "[0...,0...]", "", newName);
|
||||||
|
initTypeName2(fullName + "*", "p", ptrName);
|
||||||
|
initTypeName2(fullName + "**", "pp", ptrName);
|
||||||
|
}
|
||||||
|
|
||||||
|
void initTypeName2(string fullName, string prefix, string newName) {
|
||||||
|
addTypeName(fullName, newName, prefix);
|
||||||
|
addTypeName(fullName + "&", newName, prefix);
|
||||||
}
|
}
|
||||||
|
|
||||||
static string lowerLeadingChars(string name) {
|
static string lowerLeadingChars(string name) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user