https://github.com/protomorphine/immutableanalyzer
Roslyn Analyzer to check immutability of classes on compile time.
https://github.com/protomorphine/immutableanalyzer
immutability immutable roslyn roslyn-analyzer roslyn-analyzers
Last synced: 21 days ago
JSON representation
Roslyn Analyzer to check immutability of classes on compile time.
- Host: GitHub
- URL: https://github.com/protomorphine/immutableanalyzer
- Owner: protomorphine
- License: mit
- Created: 2024-02-17T20:17:28.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2025-02-08T09:01:53.000Z (5 months ago)
- Last Synced: 2025-04-09T06:02:47.321Z (3 months ago)
- Topics: immutability, immutable, roslyn, roslyn-analyzer, roslyn-analyzers
- Language: C#
- Homepage: https://protomorphine.github.io/ImmutableAnalyzer/
- Size: 6.16 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Immutable Analyzer
[](https://github.com/protomorphine/ImmutableAnalyzer/runs/36881446303)
[](https://github.com/protomorphine/ImmutableAnalyzer/actions/workflows/docs.yml)This project is a .NET analyzer tool that utilizes Roslyn to check a class for immutability based on
the types of it's properties and their accessor list.## Overview
Immutability is a key concept in functional programming and can help prevent bugs related to mutable state.
The purpose of this tool is to help developers ensure that their classes follow immutability principles,
which can lead to more stable and predictable code.## How To Use
- Manually
Get the sources of analyzer projects
```bash
$ git clone https://github.com/protomorphine/ImmutableAnalyzer
```
Add project reference to your `.csproj` file:
```xml
```
- Nuget
Add the NuGet Package to your project:```sh
dotnet add package Protomorphine.ImmutableAnalyzer
```## Documentation
Made with:
- [Doxygen](https://www.doxygen.nl/)
- [doxygen-awesome-css](https://github.com/jothepro/doxygen-awesome-css)