All Projects → unoplatform → Uno.CodeGen

unoplatform / Uno.CodeGen

Licence: other
A set of source generators for equality, immutability, ...

Programming Languages

C#
18002 projects

Projects that are alternatives of or similar to Uno.CodeGen

codegen
Generator for dart_native bindings. Codegen can transform native SDK to Flutter plugin.
Stars: ✭ 75 (-11.76%)
Mutual labels:  codegen
apollo-typed-documents
Get type safety for your apollo documents.
Stars: ✭ 21 (-75.29%)
Mutual labels:  codegen
gradle-msbuild-plugin
Gradle plugin for msbuild execution, supports C# project files for now
Stars: ✭ 101 (+18.82%)
Mutual labels:  msbuild
graphql-java-codegen
Make your GraphQL Java application schema-driven.
Stars: ✭ 167 (+96.47%)
Mutual labels:  codegen
Mockaco
🐵 HTTP mock server, useful to stub services and simulate dynamic API responses, leveraging ASP.NET Core features, built-in fake data generation and pure C# scripting
Stars: ✭ 213 (+150.59%)
Mutual labels:  roslyn
TSLint.MSBuild
[Deprecated] An MSBuild task for running TSLint.
Stars: ✭ 13 (-84.71%)
Mutual labels:  msbuild
qpmodel
A Relational Optimizer and Executor
Stars: ✭ 54 (-36.47%)
Mutual labels:  codegen
UmaSupporter.WebClient
🏃🏽‍♀️ 우마무스메 육성 도우미 '우마서포터'의 프론트엔드 애플리케이션입니다.
Stars: ✭ 14 (-83.53%)
Mutual labels:  codegen
vkm
VK music downloader
Stars: ✭ 14 (-83.53%)
Mutual labels:  msbuild
PowerBuild
Integrate MSBuild into PowerShell pipeline.
Stars: ✭ 24 (-71.76%)
Mutual labels:  msbuild
react-native-xaml
A React Native Windows library to use XAML / WinUI controls
Stars: ✭ 55 (-35.29%)
Mutual labels:  codegen
Rosalina
Rosalina is a code generation tool for Unity's UI documents. It generates C# code-behind script based on a UXML template.
Stars: ✭ 57 (-32.94%)
Mutual labels:  roslyn
vertx-codegen
Vert.x code generator for asynchronous polyglot APIs
Stars: ✭ 95 (+11.76%)
Mutual labels:  codegen
TypedocConverter
This is a typedoc json to C# type bindings converter. Can be used as a TypeScript to C# bindings converter.
Stars: ✭ 89 (+4.71%)
Mutual labels:  codegen
go2dts
A simple cli-tools to transform golang `struct` and `const` to typescript `interface` and `type`
Stars: ✭ 44 (-48.24%)
Mutual labels:  codegen
aws-mobile-appsync-sdk-android
Android SDK for AWS AppSync.
Stars: ✭ 101 (+18.82%)
Mutual labels:  codegen
SimpleGitVersion
Simple Git prerelease versioning integrated into SDK-based msbuild projects
Stars: ✭ 17 (-80%)
Mutual labels:  msbuild
DotNet.SystemCollections.Analyzers
A set of code analyzers & code fix providers to help developers use the proper .NET Collection & API in their algorithms
Stars: ✭ 72 (-15.29%)
Mutual labels:  roslyn
Xamarin.Legacy.Sdk
Starting from a .NET 6 project, adds the ability to target legacy Xamarin target frameworks such as monoandroid11.0 or xamarin.ios10. *Not fully supported*
Stars: ✭ 18 (-78.82%)
Mutual labels:  msbuild
revgen
Speed up go:generate by auto detecting code changes
Stars: ✭ 20 (-76.47%)
Mutual labels:  codegen

Uno CodeGen

Uno.CodeGen is a set of tools to generate C# code in msbuild based projects.

Generate Equality Members for your C# classes

Equality Members generation snippet

Features:

  • Amazingly fast: absolutely zero reflection at runtime
  • Generates both .Equals() and .GetHashCode() overrrides
  • Generates equality (== and !=) operators
  • Implements IEquatable<T>
  • Works with derived classes
  • Custom comparers supported
  • Works with collection members (both same order and unsorted equality)
  • Works with dictionary members (both same order and unsorted equality)
  • Optional case insentive comparisons for strings
  • Optional support for KeyEquality (see doc for more details)
  • Debuggable: You can put a breakpoint directly in the generated code
  • Highly configureable: Generated code provides a lot of useful tips (stripped in previous snippet)
  • Documentation here for Equality Members Generator

Create truly Immutable Entities in C#

Equality Members generation snippet

Features:

  • Automatic Null object pattern generation
  • Automatic generation of <YourClass>.Builder nested class
  • Fluent .With<field/property name>() generation of every members of your class
  • Amazingly fast: absolutely zero reflection at runtime
  • Works with generics & derived classes (even if they are from external assembly)
  • Optional support (on by default) for [GeneratedEquality]
  • Transparent support for Newtonsoft's JSON.NET (activated when detected, can be turned off)
  • Transparent support for System.Text.Json (activated when detected, can be turned off)
  • Debuggable: You can put a breakpoint directly in the generated code
  • Validation to avoid mutable code in your class
  • Highly configureable: Generated code provides a lot of useful tips (stripped in previous snippet)
  • Documentation here for Immutable Entities Generator

Available Generators

Generator Triggering Attributes Usage
ClassLifecycleGenerator [ConstructorMethod] [DisposeMethod] [FinalizerMethod] Generate code to extend the lifecyle of a class. Documentation
CompilationReferencesListingGenerator none Generate a file without useful code, containing only comments detailing references used to compile the project. Documentation
EqualityGenerator [GenerateEquality] Generate code for efficient .Equals() members generation. Documentation
ImmutableGenerator [GenerateImmutable] Generate code to build truly immutable entities. Documentation
InjectableGenerator [Inject] Generate code to resolve and inject dependencies. Documentation

Nuget

NuGet

FAQ

Read our FAQ here

Have questions? Feature requests? Issues?

Make sure to visit our FAQ, StackOverflow, create an issue or visit our gitter.

Contributing

Read our contributing guide to learn about our development process and how to propose bug fixes and improvements.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].