FastCloner.SourceGenerator
1.2.1
Prefix Reserved
dotnet add package FastCloner.SourceGenerator --version 1.2.1
NuGet\Install-Package FastCloner.SourceGenerator -Version 1.2.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="FastCloner.SourceGenerator" Version="1.2.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="FastCloner.SourceGenerator" Version="1.2.1" />
<PackageReference Include="FastCloner.SourceGenerator" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add FastCloner.SourceGenerator --version 1.2.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: FastCloner.SourceGenerator, 1.2.1"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package FastCloner.SourceGenerator@1.2.1
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=FastCloner.SourceGenerator&version=1.2.1
#tool nuget:?package=FastCloner.SourceGenerator&version=1.2.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
FastCloner.SourceGenerator
High-performance source generator for deep cloning objects at compile time.
Installation
dotnet add package FastCloner.SourceGenerator
The package is automatically configured as a build-time dependency and won't propagate to consuming projects.
Usage
- Mark your classes with
[FastClonerClonable]attribute:
using FastCloner.SourceGenerator.Shared;
[FastClonerClonable]
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
public List<string> Hobbies { get; set; }
}
- The generator will create a
FastDeepClone()extension method:
var original = new Person { Name = "John", Age = 30, Hobbies = new() { "Reading" } };
var clone = original.FastDeepClone();
Features
- ✅ Zero reflection - all cloning logic is generated at compile time
- ✅ Circular reference detection - automatically handled when needed
- ✅ High performance - up to 60% faster than competing source generators
- ✅ Collections support - List, Dictionary, Arrays, etc.
- ✅ Nullable reference types - full support
- ✅ No partial requirement - works with any class or struct
Requirements
- .NET Standard 2.0+ or .NET 5+
- C# 9.0+ (for source generators)
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on FastCloner.SourceGenerator:
| Package | Downloads |
|---|---|
|
Digitall.Testing
Package Description |
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on FastCloner.SourceGenerator:
| Repository | Stars |
|---|---|
|
SnapXL/SnapX
SnapX is a free, open-source, cross-platform tool that lets you capture or record any area of your screen and instantly share it with a single keypress. Upload images, videos, text, and more to multiple supported destinations—all with ease. ShareX fork
|
| Version | Downloads | Last Updated |
|---|---|---|
| 1.2.1 | 428 | 5/12/2026 |
| 1.2.0 | 9,261 | 3/6/2026 |
| 1.1.10 | 95 | 5/10/2026 |
| 1.1.9 | 278 | 3/28/2026 |
| 1.1.8 | 349 | 3/10/2026 |
| 1.1.7 | 1,609 | 2/26/2026 |
| 1.1.6 | 157 | 2/25/2026 |
| 1.1.5 | 1,128 | 2/23/2026 |
| 1.1.4 | 8,224 | 1/27/2026 |
| 1.1.3 | 182 | 1/19/2026 |
| 1.1.2 | 120 | 1/17/2026 |
| 1.1.1 | 128 | 1/16/2026 |
| 1.1.0 | 927 | 1/8/2026 |
| 1.0.7 | 255 | 1/5/2026 |
| 1.0.6 | 116 | 12/30/2025 |
| 1.0.5 | 117 | 12/30/2025 |
| 1.0.4 | 490 | 12/10/2025 |
| 1.0.3 | 202 | 12/5/2025 |
| 1.0.2 | 759 | 12/2/2025 |
| 1.0.1 | 242 | 11/15/2025 |
Loading failed