Daht.Sagitta.Core
8.0.1
Prefix Reserved
See the version list below for details.
dotnet add package Daht.Sagitta.Core --version 8.0.1
NuGet\Install-Package Daht.Sagitta.Core -Version 8.0.1
<PackageReference Include="Daht.Sagitta.Core" Version="8.0.1" />
<PackageVersion Include="Daht.Sagitta.Core" Version="8.0.1" />
<PackageReference Include="Daht.Sagitta.Core" />
paket add Daht.Sagitta.Core --version 8.0.1
#r "nuget: Daht.Sagitta.Core, 8.0.1"
#:package Daht.Sagitta.Core@8.0.1
#addin nuget:?package=Daht.Sagitta.Core&version=8.0.1
#tool nuget:?package=Daht.Sagitta.Core&version=8.0.1
Daht.Sagitta.Core
home / packages /
Functional paradigm abstractions for .NET - Core
Table of contents
Installation
For information on all available versions, please see the NuGet or GitHub package registry
.NET command-line interface
dotnet add package 'Daht.Sagitta.Core' --version 'x.x.x'
For more information, please see here.
Project file
<Project Sdk="Microsoft.NET.Sdk">
<ItemGroup>
<PackageReference Include="Daht.Sagitta.Core" Version="x.x.x" />
</ItemGroup>
</Project>
For more information, please see here.
Central package management
Directory.Packages.props
file:<Project> <PropertyGroup> <ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally> </PropertyGroup> <ItemGroup> <PackageVersion Include="Daht.Sagitta.Core" Version="x.x.x" /> </ItemGroup> </Project>
Project file:
<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <PackageReference Include="Daht.Sagitta.Core" /> </ItemGroup> </Project>
For more information, please see here.
API
Root
Structures intended to integrate with and extend existing modules.
Type | Description |
---|---|
Unit | Represents the absence of a specific value, explicitly simulating the void type |
Results
Structures intended to encapsulate and manage both potential failure and expected success for a given action.
Type | Description |
---|---|
Result<TFailure, TSuccess> | Encapsulates both a possible failure and an expected success for a given action (both value and reference types) |
ResultFactory | Provide global factory methods to initialize Result<TFailure, TSuccess> |
ValueResult<TFailure, TSuccess> | Encapsulates both a possible failure and an expected success for a given action (only value types) |
ValueResultFactory | Provide global factory methods to initialize ValueResult<TFailure, TSuccess> |
FAQ
- When to use exceptions?
- Exceptional, unpredictable, or non-deterministic situations (e.g., disk I/O failures, network timeouts, out-of-memory conditions).
- When local recovery is not possible or would compromise system integrity (e.g., corrupted state, violated invariants, missing critical resources).
- When an error must be propagated beyond the local scope to enable stack-unwinding or a global recovery strategy (e.g., transaction rollback, centralized cleanup, subsystem restart, escalation to another API/module).
- When not to use exceptions?
- Predictable or expected scenarios (e.g., business-rule violations, parameter validation, boundary checks, foreseeable edge cases).
- As a substitute for normal control flow (e.g., loop termination, flag checking, selecting alternate code paths).
- In high-performance and latency-sensitive scenarios (e.g., tight loops, real-time processing, compute-intensive tasks).
- Why
Result<TFailure, TSuccess>
andValueResult<TFailure, TSuccess>
?- Exceptions are expensive, because throwing and catching requires constructing complex objects, capturing a full stack trace, and unwinding the call stack.
- Exceptions are intended for exceptional and unpredictable situations and should not be used for regular control flow or business-rule enforcement.
License
Licensed under the MIT License.
Security policy
Please read and keep in mind our security policy.
Code of conduct
Please read and follow our code of conduct.
Contributing guidelines
Please read and follow our contributing guidelines.
Contact
- Email (FOSS): daht.x.foss@gmail.com
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net9.0 is compatible. 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. net10.0 was computed. 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. |
-
net9.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 | |
---|---|---|---|
8.1.0 | 21 | 9/8/2025 | |
8.0.1 | 132 | 8/31/2025 | |
8.0.0 | 121 | 8/31/2025 | |
7.1.0 | 306 | 12/24/2024 | |
7.0.0 | 120 | 12/24/2024 | |
6.4.0 | 117 | 12/24/2024 | |
6.3.0 | 174 | 12/14/2024 | |
6.2.0 | 143 | 12/9/2024 | |
6.1.0 | 127 | 12/9/2024 | |
6.0.0 | 165 | 11/17/2024 | |
5.0.0 | 182 | 8/22/2024 | |
4.3.0 | 158 | 6/12/2024 | |
4.2.0 | 225 | 2/13/2024 | |
4.1.0 | 146 | 2/13/2024 | |
4.0.0 | 181 | 2/4/2024 | |
3.13.0 | 180 | 1/22/2024 | |
3.12.0 | 173 | 1/22/2024 | |
3.11.0 | 220 | 1/7/2024 | |
3.10.0 | 188 | 1/5/2024 | |
3.9.0 | 195 | 1/4/2024 | |
3.8.0 | 180 | 1/4/2024 | |
3.7.0 | 184 | 1/4/2024 | |
3.6.0 | 181 | 1/4/2024 | |
3.5.0 | 186 | 1/4/2024 | |
3.4.0 | 192 | 1/4/2024 | |
3.3.0 | 179 | 1/4/2024 | |
3.2.0 | 181 | 1/3/2024 | |
3.1.0 | 174 | 1/3/2024 | |
3.0.0 | 200 | 1/2/2024 | |
2.8.0 | 265 | 12/9/2023 | |
2.7.0 | 235 | 12/8/2023 | |
2.6.0 | 215 | 12/8/2023 | |
2.5.0 | 229 | 12/8/2023 | |
2.4.0 | 233 | 12/8/2023 | |
2.3.0 | 218 | 12/6/2023 | |
2.2.0 | 228 | 12/6/2023 | |
2.1.0 | 197 | 12/6/2023 | |
2.0.0 | 220 | 12/5/2023 | |
1.2.0 | 235 | 12/5/2023 | |
1.1.0 | 232 | 12/4/2023 | |
1.0.0 | 238 | 12/3/2023 |