YASF 2.0.0
See the version list below for details.
dotnet add package YASF --version 2.0.0
NuGet\Install-Package YASF -Version 2.0.0
<PackageReference Include="YASF" Version="2.0.0" />
paket add YASF --version 2.0.0
#r "nuget: YASF, 2.0.0"
// Install YASF as a Cake Addin
#addin nuget:?package=YASF&version=2.0.0
// Install YASF as a Cake Tool
#tool nuget:?package=YASF&version=2.0.0
YASF
Note that this package is no more than a parser.
YASF is yet another storage format among the likes of JSON and CSV. This one, however, brings a simpler format at the cost of nesting capabilities (which are present, just not as good as JSON's).
Features
- String, Numeric, Boolean, and Tree values (arrays are coming soon)
- Serialization to and from types
- Custom serialization names
Feature Roadmap
- ☐ Arrays
- ☐ Adquate dictionary support
- ☐ Dynamic values/methods
- ☐ Conversion to and from JSON and YAML
Quick Start
To install you can:
- Download the DLL from your chosen release version (github)
- Download and extract the source code into your codebase (again, github)
There are 2 maintained ways of parsing a YASF document.
<br/>
The most direct and simplest way is using one of SettingsDocument
's creation methods: SettingsDocument.FromText(System.String)
, SettingsDocument.FromStream(System.IO.Stream)
, SettingsDocument.FromParser(SettingsConfig.Parser.SettingsParser)
.
Otherwise, you can directly use the parser (SettingsParser
) to enumerate raw nodes.
var parser = new YASF.Parser.SettingsParser(MyText);
// System.String and System.IO.Stream are both accepted for initialization
foreach (SettingsConfig.Parser.Nodes.SettingsNode node in parser.ParseSyntaxTree())
{
Console.WriteLine($"Parsed Node: {node.ToFormattedString()}");
}
And if you want a document anyway, use SettingsParser.ParseDocument()
.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net6.0
- Jammo.ParserTools (>= 1.7.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Rename project.