Eerste commit
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
namespace MijnBesluit.Application.Models;
|
||||
|
||||
/// <summary>Uitkomst van een bewerking, met een foutmelding die direct aan de gebruiker getoond mag worden.</summary>
|
||||
public readonly struct Result
|
||||
{
|
||||
public bool Succeeded { get; }
|
||||
public string? Error { get; }
|
||||
|
||||
private Result(bool ok, string? error) { Succeeded = ok; Error = error; }
|
||||
|
||||
public static Result Ok() => new(true, null);
|
||||
public static Result Fail(string error) => new(false, error);
|
||||
}
|
||||
|
||||
/// <summary>Uitkomst met een waarde erbij.</summary>
|
||||
public readonly struct Result<T>
|
||||
{
|
||||
public bool Succeeded { get; }
|
||||
public string? Error { get; }
|
||||
public T? Value { get; }
|
||||
|
||||
private Result(bool ok, T? value, string? error) { Succeeded = ok; Value = value; Error = error; }
|
||||
|
||||
public static Result<T> Ok(T value) => new(true, value, null);
|
||||
public static Result<T> Fail(string error) => new(false, default, error);
|
||||
}
|
||||
Reference in New Issue
Block a user