A MSBuild task that scans assemblies for locations to patch in IL code that normally cannot be generated from C# (e.g. cpblk/memcpy). The majority of the stub methods available are generic, which allows for low overhead (e.g. no boxing) when working with struct types and interoping with (unmanaged) memory pointers.
The nuget package works with both PackageReference and the older nuget config format. The stub methods are served as a content file that will be added to your project with a namespace transformation. The generated code behaves similarly to the new Unsafe library, but this patcher allows you to inject that behavior directly into your own assembly, avoiding additional nuget dependencies or reliance on packing tools like ILMerge.
Note: C# 7.2 is required as of version 2.0.
Install-Package MemoryInterop.ILPatcher -Version 2.2.0
dotnet add package MemoryInterop.ILPatcher --version 2.2.0
<PackageReference Include="MemoryInterop.ILPatcher" Version="2.2.0"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> </PackageReference>
paket add MemoryInterop.ILPatcher --version 2.2.0
- No dependencies.
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.