ErrorProne.NET.Structs 0.1.2

Analyzers that help avoiding struct and readonly reference performance pitfalls

There is a newer prerelease version of this package available.
See the version list below for details.
Install-Package ErrorProne.NET.Structs -Version 0.1.2
dotnet add package ErrorProne.NET.Structs --version 0.1.2
<PackageReference Include="ErrorProne.NET.Structs" Version="0.1.2">
  <PrivateAssets>all</PrivateAssets>
  <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add ErrorProne.NET.Structs --version 0.1.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: ErrorProne.NET.Structs, 0.1.2"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install ErrorProne.NET.Structs as a Cake Addin
#addin nuget:?package=ErrorProne.NET.Structs&version=0.1.2

// Install ErrorProne.NET.Structs as a Cake Tool
#tool nuget:?package=ErrorProne.NET.Structs&version=0.1.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

* EPS01: detects that a struct could be made readonly;
* EPS02: detects that a struct not suitable for readonly contexts is passed using 'in'-parameter
* EPS03: detects that a struct not suitable for readonly contexts is returned by ref readonly reference.
* EPS04: detects that a struct not suitable for readonly contexts is stored in ref readonly local.
* EPS05: detects that a struct could be passed using 'in'-modifier for performance reasons.
* EPS06: detects that the compiler emits a defensive copy for a given expression.

  • .NETStandard 1.3

    • No dependencies.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on ErrorProne.NET.Structs:

Package Downloads
Rfm69Transceiver.Wrapper.Net
This library is for controlling an RFM69 Transceiver through .NET. It wraps a native library for this. The only built in library is a Raspberry Pi library.
LetMeSpeak
Package Description

GitHub repositories (4)

Showing the top 4 popular GitHub repositories that depend on ErrorProne.NET.Structs:

Repository Stars
dotnet/orleans
Orleans is a cross-platform framework for building distributed applications with .NET
SergeyTeplyakov/ErrorProne.NET
Set of roslyn-based analyzers for catching common C# errors (inspired by Google's error-prone)
RainwayApp/bebop
An extremely simple, fast, efficient, cross-platform serialization format
pamidur/aspect-injector
AOP framework for .NET (c#, vb, etc)

Version History

Version Downloads Last updated
0.3.0-beta.0 14,652 5/12/2020
0.2.0-beta.7 12,234 4/9/2019
0.1.2 60,144 11/1/2018
0.1.1.11 438 10/25/2018
0.1.1.10 509 10/3/2018
0.1.1 409 10/2/2018
0.1.0 1,898 5/3/2018