Visitor.NET.AutoVisitableGen 1.3.0

dotnet add package Visitor.NET.AutoVisitableGen --version 1.3.0
NuGet\Install-Package Visitor.NET.AutoVisitableGen -Version 1.3.0
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="Visitor.NET.AutoVisitableGen" Version="1.3.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Visitor.NET.AutoVisitableGen --version 1.3.0
#r "nuget: Visitor.NET.AutoVisitableGen, 1.3.0"
#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.
// Install Visitor.NET.AutoVisitableGen as a Cake Addin
#addin nuget:?package=Visitor.NET.AutoVisitableGen&version=1.3.0

// Install Visitor.NET.AutoVisitableGen as a Cake Tool
#tool nuget:?package=Visitor.NET.AutoVisitableGen&version=1.3.0

Visitor.NET.AutoVisitableGen

If you do not want implement visitable manually, you can do it automatically with incremental source generator.

Install package : https://www.nuget.org/packages/Visitor.NET.AutoVisitableGen.

Then, rewrite the nodes type declarations like this:

public abstract record BinaryTreeNode : IVisitable<BinaryTreeNode>
{
    public abstract TReturn Accept<TReturn>(
        IVisitor<BinaryTreeNode, TReturn> visitor);
}

[AutoVisitable<BinaryTreeNode>]
public partial record Operation(
    char Symbol,
    BinaryTreeNode Left,
    BinaryTreeNode Right) : BinaryTreeNode;

[AutoVisitable<BinaryTreeNode>]
public partial record Number(double Value) : BinaryTreeNode;

[AutoVisitable<BinaryTreeNode>]
public partial record Parenthesis(BinaryTreeNode Node) : BinaryTreeNode;
There are no supported framework assets in this package.

Learn more about Target Frameworks and .NET Standard.

  • .NETStandard 2.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.3.0 74 4/21/2024
1.2.0 131 4/17/2024
1.1.0 112 4/16/2024
1.0.1 185 12/12/2023
1.0.0 166 12/11/2023