Commit Graph

103 Commits

Author SHA1 Message Date
LukeFZ
87766f6f96 Add support for metadata version 29.2 and 31 2024-06-24 18:41:14 +02:00
LukeFZ
b21b6e89ab properly fix scoped name for generic arrays 2024-02-27 17:34:24 +01:00
LukeFZ
e328ed9b84 just check for FullName == null in getScopedFullname 2024-02-25 15:23:58 +01:00
LukeFZ
2a492e02ba Update getScopedFullName for generic params + update README 2024-02-25 11:32:20 +01:00
LukeFZ
1d2890961c Fix custom attribute parsing when a null array is used and when an assembly has no attributes 2023-12-07 20:52:06 +01:00
LukeFZ
5b1d9c67d1 Add name mangling to Methods/MethodInfo/TypeInfo/TypeRef, remove Boxing from ValueTypes when used as the this parameter, fix crashes when a module has no attributes 2023-12-06 20:09:35 +01:00
LukeFZ
7120970ece Use actual size of static array initializers 2023-12-01 08:14:12 +01:00
LukeFZ
7e7d345c30 Add support for ThreadStatic fields 2023-12-01 07:08:48 +01:00
LukeFZ
227aefedef simplify custom attribute logic a bit by always returning arrays as ConstantBlobArrayElement 2023-12-01 06:46:58 +01:00
LukeFZ
6aa96b431d Support reading and writing custom arguments for v29 2023-12-01 04:43:27 +01:00
LukeFZ
d7067225fe fix Il2CppType definition for 27.2+ (better) 2023-11-30 21:37:17 +01:00
LukeFZ
ef1a5d1e83 Add BlobReader, fix Il2CppType for 27.2+ 2023-11-30 13:31:37 +01:00
LukeFZ
a4528e5f55 Add FieldRva MetadataUsage type and fix current heuristic 2023-11-30 05:15:01 +01:00
LukeFZ
ab841ccb2b Optimize some of the string operations 2023-11-30 05:13:19 +01:00
LukeFZ
9f6309fb46 forgot to commit the if part 2023-11-29 21:39:24 +01:00
LukeFZ
8ffc7e0021 Add stuff for v29 2023-11-29 21:32:43 +01:00
LukeFZ
9f0d0476bb cache tyoes 2023-11-29 21:19:41 +01:00
Katy Coe
4d6686a063 Don't crash on 64-bit Flags enums with top bit set (#131) 2021-01-28 20:21:20 +01:00
Katy Coe
3a9a190530 Model: Fix GetType() and GetGenericMethod() with global namespace 2021-01-26 20:51:05 +01:00
Katy Coe
52f477698e IL2CPP: Fix off-by-1 pointer error in non-PE x86/64 files (#123) 2021-01-11 19:13:28 +01:00
Katy Coe
cd7ddf193a Model: Implement MetadataToken property 2021-01-10 08:37:49 +01:00
Katy Coe
a007b128fb Model: Add MethodImplementationFlags 2021-01-08 22:23:29 +01:00
Katy Coe
e9a66b98d4 Model: Add PropertyAttributes 2021-01-08 22:23:29 +01:00
Katy Coe
bca8baceb9 Model: Copy member attribute flags directly 2021-01-08 22:23:29 +01:00
Katy Coe
71be0f2af2 Update year in copyright messages 2021-01-04 05:26:43 +01:00
Katy Coe
7c65d2c741 Model: Eliminate no-longer needed thread lock in CAD 2020-12-30 09:16:25 +01:00
Katy Coe
b004b8195b Model: Fix crash in ResolveGenericArguments with 32-bit binary rebased above 0x80000000 (#119) 2020-12-30 08:25:01 +01:00
Katy Coe
5dc8e823c4 Plugins: Add IPostProcessTypeModel 2020-12-21 19:11:49 +01:00
Katy Coe
b1d61f81f0 Model: Allow Name to be changed by plugins 2020-12-21 19:02:03 +01:00
Katy Coe
3ddf04eafc Model: Don't crash on obfuscated assembly or namespace strings 2020-12-08 15:37:24 +01:00
Katy Coe
7289001933 IL2CPP: Add Unity 2021.1 TODOs 2020-11-26 21:42:36 +01:00
Katy Coe
4a75291140 C#: Output floats and doubles with InvariantCulture (#82) 2020-10-13 08:32:38 +02:00
Katy Coe
ac17a3a510 C#: Fix handling of scoped names pointing to global:: scope 2020-09-14 12:28:00 +02:00
Katy Coe
27b9b290da C#/C++: Handle Unicode characters in identifiers 2020-09-14 12:27:12 +02:00
Katy Coe
ff7110144a C#: Sanitize parameter names (#70) 2020-09-14 12:26:37 +02:00
Katy Coe
47cd6b928b C#: Sanitize method names (#70) 2020-09-14 12:25:52 +02:00
Katy Coe
fcbfc65204 C#: Sanitize type names (#70) 2020-09-14 05:02:47 +02:00
Katy Coe
8d015c8271 C#: Sanitize field and event names (#70) 2020-09-13 15:04:02 +02:00
Katy Coe
e511b99dec Model: UnmangledBaseName / CSharpSafeName refactoring (#70) 2020-09-13 14:51:20 +02:00
Katy Coe
54ac9d7c1a IL2CPP: Fix crash when loading Il2CppCodeGenModule with no concrete methods (#58) 2020-08-22 03:30:17 +02:00
Katy Coe
5828ed106b Model/C#: Provide FieldHasRVA flag; output metadata preview for static array initializer implementations (#59) 2020-08-22 03:14:11 +02:00
Katy Coe
4b86087c7a Allow longs to call ToAddressString() (as well as ulongs) 2020-08-17 01:43:52 +02:00
Katy Coe
ec6066aa1d Model: Handle generic type definition fetch for metadata v27 2020-08-16 01:13:27 +02:00
Katy Coe
1f738a60c6 IL2CPP: Load metadata v27; mark broken areas with TODO 2020-08-15 06:28:48 +02:00
Katy Coe
99a7e2e8cb C#: Output async keyword for async methods (and suppress AsyncStateMachine) 2020-08-14 03:33:41 +02:00
Katy Coe
87de370a3a Model: Add Model.CustomAttributeGeneratorsByAddress 2020-08-09 21:35:55 +02:00
Katy Coe
84f82474eb Refactor Model.CustomAttributeGenerators to give list of unique VAs per TypeInfo 2020-08-09 21:32:43 +02:00
Katy Coe
a252800052 Model: Add GetMethodBody() to CustomAttributeData and MethodInvoker 2020-08-09 20:53:10 +02:00
Katy Coe
ea8a18353a Model: Change CustomAttributeData.VirtualAddress to be non-nullable 2020-08-09 20:44:13 +02:00
Katy Coe
3fb0b085da Model: Add Scope.Empty static helper 2020-08-09 19:24:54 +02:00