AtoMac 1.0.0
dotnet add package AtoMac --version 1.0.0
NuGet\Install-Package AtoMac -Version 1.0.0
<PackageReference Include="AtoMac" Version="1.0.0" />
paket add AtoMac --version 1.0.0
#r "nuget: AtoMac, 1.0.0"
// Install AtoMac as a Cake Addin #addin nuget:?package=AtoMac&version=1.0.0 // Install AtoMac as a Cake Tool #tool nuget:?package=AtoMac&version=1.0.0
AtoMac
AtoMac
is an combination library, bridging the parser builders Atomize
with the macro processing Mackerel
. It extends the latter, by adding the following Replace
functions:
Instruction Replace(Instruction input, Parser<char> pattern, Instruction with);
Instruction Replace(Instruction input, Parser<char> pattern, Func<char, Instruction> with);
Instruction Replace(Instruction input, Parser<char> pattern, Func<char, int, Instruction> with);
Instruction Replace(Instruction input, Parser<ReadOnlyMemory<char>> pattern, Instruction with);
Instruction Replace(Instruction input, Parser<ReadOnlyMemory<char>> pattern, Func<char, Instruction> with);
Instruction Replace(Instruction input, Parser<ReadOnlyMemory<char>> pattern, Func<char, int, Instruction> with);
Instruction Replace(Instruction input, Parser<Instruction> parser)
Mackerel
alone supports replacing text with char
, string
or Regex
patterns. With AtoMac
, patterns built from Atomize
parsers can be matched and handled. Examples of what atomic could be used for are:
source translation from one language to another
parser generators, where
Atomize
can be used to build a grammar parser, andMackerel
+AtoMac
can
be used to transform the grammar into a parser in some language.
Installation
AtoMac
can be installed via NuGet or
dotnet add package AtoMac
Documentation
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net7.0 is compatible. 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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
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.0.0 | 189 | 10/9/2023 |