Type string literals as System.String

This commit is contained in:
Robert Xiao
2020-06-16 19:58:15 -07:00
committed by Katy
parent 67acd18c03
commit b7c93ffcc7
2 changed files with 3 additions and 2 deletions

View File

@@ -52,7 +52,7 @@ namespace Il2CppInspector.Outputs
}
}
private string AsCType(TypeInfo ti) {
public string AsCType(TypeInfo ti) {
// IsArray case handled by TypeNamer.GetName
if (ti.IsByRef || ti.IsPointer) {
return $"{AsCType(ti.ElementType)} *";

View File

@@ -144,6 +144,7 @@ typedef __int64 int64_t;
return;
}
var stringType = typeGenerator.AsCType(model.TypesByFullName["System.String"]);
foreach (var usage in model.Package.MetadataUsages) {
var address = usage.VirtualAddress;
string name;
@@ -151,7 +152,7 @@ typedef __int64 int64_t;
switch (usage.Type) {
case MetadataUsageType.StringLiteral:
var str = model.GetMetadataUsageName(usage);
writeName(address, $"StringLiteral_{stringToIdentifier(str)}");
writeTypedName(address, stringType, $"StringLiteral_{stringToIdentifier(str)}");
writeComment(address, str);
break;
case MetadataUsageType.Type: