Silverfly 1.2.0

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

// Install Silverfly as a Cake Tool
#tool nuget:?package=Silverfly&version=1.2.0                

Silverfly

CodeFactor NuGet Version NuGet Downloads License: GPL v3 Discord Libraries.io SourceRank alternate text is missing from this package README image

Silverfly is a versatile parsing framework that provides extensive support for building custom parsers with ease. It supports Pratt parsing, a powerful method for parsing expressions and statements in a flexible manner.

Features

  • Flexible Parsing: Supports Pratt parsing for complex expression handling.
  • Extensible: Easily extend the parser and lexer with custom rules.
  • Documentation: Comprehensive instructions available in the wiki.

Installation

To install Silverfly, you can use NuGet:

dotnet add package Silverfly

Usage

using Silverfly;

namespace Sample;

public class Program
{
    public static void Main(string[] args)
    {
        while (true)
        {
            Console.Write("> ");
            var input = Console.ReadLine();

            var parsed = new ExpressionGrammar().Parse(input);
            var evaluated = parsed.Tree.Accept(new EvaluationVisitor());

            Console.WriteLine("> " + evaluated);
        }
    }
}

For more detailed instructions and advanced usage, please refer to the Wiki. A great example can be found here

Silverfly uses the brilliant library from MrKWatkins to build an AST.

Contributing

We welcome contributions! Please see our contributing guidelines for more details on how to get involved.

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on Silverfly:

Package Downloads
Furesoft.Core

Package Description

Silverfly.Testing

A little framework to build parsers

Silverfly.Repl

A little framework to build parsers

Silverfly.Sample.Func

A full blown example of Silverfly

Silverfly.Backend

Helpers to convert from Silverfly to a Distil backend

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.2.0 95 12/14/2024
1.0.80 120 11/10/2024
1.0.79 114 11/10/2024
1.0.78 111 11/7/2024
1.0.77 108 11/1/2024
1.0.76 97 11/1/2024
1.0.75 101 11/1/2024
1.0.74 199 10/19/2024
1.0.73 104 10/12/2024
1.0.72 110 10/12/2024
1.0.71 101 10/12/2024
1.0.70 156 10/3/2024
1.0.69 114 9/27/2024
1.0.68 149 8/27/2024
1.0.67 130 8/7/2024
1.0.66 127 7/24/2024
1.0.65 111 7/10/2024
1.0.64 113 7/6/2024
1.0.63 112 7/6/2024
1.0.62 111 6/30/2024
1.0.61 127 6/30/2024