Rulealize.Plugin.Binding
1.0.0
See the version list below for details.
dotnet add package Rulealize.Plugin.Binding --version 1.0.0
NuGet\Install-Package Rulealize.Plugin.Binding -Version 1.0.0
<PackageReference Include="Rulealize.Plugin.Binding" Version="1.0.0" />
<PackageVersion Include="Rulealize.Plugin.Binding" Version="1.0.0" />
<PackageReference Include="Rulealize.Plugin.Binding" />
paket add Rulealize.Plugin.Binding --version 1.0.0
#r "nuget: Rulealize.Plugin.Binding, 1.0.0"
#:package Rulealize.Plugin.Binding@1.0.0
#addin nuget:?package=Rulealize.Plugin.Binding&version=1.0.0
#tool nuget:?package=Rulealize.Plugin.Binding&version=1.0.0
Rulealize.Plugin.Binding
Scoped local bindings for Rulealize rule sets.
| Plugin id | Rulealize.Plugin.Binding |
| Namespace | bind |
| Reserved prefix | @ |
| Depends on | Rulealize.Abstraction |
| Specification | doc/specification.md |
bind.let introduces names; bind.local reads one, with "@name" as its shorthand.
Independent of Rulealize.Plugin.Branch — bindings without branches make sense, and so
does the reverse.
Naming a value keeps a rule set from repeating an expression. It also states something the evaluator can act on: two references to one name are known from the syntax to be the same value, where two copies of an expression are not.
The part worth knowing before reading the specification is that this plugin owns only
reading a binding. Introducing one is spread across whoever needs it — bind.let, the
sequence operations' as, a definition's parameters — so seq.takeWhile introduces a name
that bind.local reads while neither plugin references the other. What connects them is
scope machinery that belongs to Rulealize.Abstraction, which both already depend on.
Building
Rulealize.Abstraction is not on nuget.org yet, so NuGet.config points at a folder
feed. Produce it from the abstraction repository first:
dotnet pack path\to\Rulealize.Abstraction\src\Rulealize.Abstraction -c Release -o path\to\LocalNuGet
with LocalNuGet a sibling of this repository. Then dotnet build.
License
Apache-2.0.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Rulealize.Abstraction (>= 0.3.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.