This improves ReplaceReferencesRewriter to handle Generic Classes without needing to specify every known permutation that gets used.
This unfortunately doesn't handle the edge case of Generic arguments that are nested classes (The RewriteHelper methods cant format them in the way that Reflection would want)
In addition to the readbility improvements, it also handles the additional two cases of:
reference to Netcode.NetFieldBase2<StardewValley.Objects.Ring,Netcode.NetRef1>.op_Implicit (no such method)
reference to Netcode.NetFieldBase2<StardewValley.BuildingPaintColor,Netcode.NetRef1>.op_Implicit (no such method)
I have also included a manual handling of NetLong's op_Implicit as well, which couldn't Facade off NetLong directly due to being a sealed class, haven't explicitly tested code paths actually invoking this post rewrite however.
This improves ReplaceReferencesRewriter to handle Generic Classes without needing to specify every known permutation that gets used.
This unfortunately doesn't handle the edge case of Generic arguments that are nested classes (The RewriteHelper methods cant format them in the way that Reflection would want)
In addition to the readbility improvements, it also handles the additional two cases of: reference to Netcode.NetFieldBase>.op_Implicit (no such method)
reference to Netcode.NetFieldBase>.op_Implicit (no such method)
2<StardewValley.Objects.Ring,Netcode.NetRef
12<StardewValley.BuildingPaintColor,Netcode.NetRef
1I have also included a manual handling of NetLong's op_Implicit as well, which couldn't Facade off NetLong directly due to being a sealed class, haven't explicitly tested code paths actually invoking this post rewrite however.