Tmds.DBus.SourceGenerator 0.0.6

Tmds.DBus.SourceGenerator

A roslyn source generator targeting the Tmds.DBus.Protocol API

Introduction

This source generator completely eliminates the usage of reflection in order to be trimmer- and AOT-friendly. For further documentation of Tmds.DBus and DBus in general, see https://github.com/tmds/Tmds.DBus#readme.

Usage

Either install the NuGet package Tmds.DBus.SourceGenerator or clone the git repository and add a project reference to the source generator in your .csproj

<ItemGroup>
    <ProjectReference Include="./Tmds.DBus.SourceGenerator/Tmds.DBus.SourceGenerator/Tmds.DBus.SourceGenerator.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />
</ItemGroup>

Then add the xml definitions as AdditionalFiles to your project. Depending on whether you want to generate a Proxy or a handler, set the DBusGeneratorMode to either Proxy or Handler, respectively.

<ItemGroup>
    <AdditionalFiles Include="DBusXml/DBus.xml" DBusGeneratorMode="Proxy" />
    <AdditionalFiles Include="DBusXml/StatusNotifierItem.xml" DBusGeneratorMode="Handler" />
</ItemGroup>

Now you can instantiate the generated proxy class and use it like with the traditional Tmds.DBus. For handlers, create a new class and inherit from the generated one and implement its abstract methods.

Showing the top 20 packages that depend on Tmds.DBus.SourceGenerator.

Packages Downloads
Avalonia.FreeDesktop
Avalonia is a cross-platform UI framework for .NET providing a flexible styling system and supporting a wide range of Operating Systems such as Windows, Linux, macOS and with experimental support for Android, iOS and WebAssembly.
9

This package has no dependencies.

Version Downloads Last updated
0.0.20 5 11/11/2024
0.0.19 5 08/27/2024
0.0.18 5 07/26/2024
0.0.17 5 07/08/2024
0.0.16 5 07/09/2024
0.0.15 5 07/09/2024
0.0.14 5 07/09/2024
0.0.13 5 07/09/2024
0.0.12 5 07/09/2024
0.0.11 5 07/09/2024
0.0.10 5 07/09/2024
0.0.8 5 07/09/2024
0.0.7 4 08/30/2024
0.0.6 2 07/09/2024
0.0.5 7 07/09/2024
0.0.4 5 07/09/2024
0.0.3 7 07/09/2024
0.0.2 5 07/09/2024