Class ToolResult<T>
Discriminated union over a successful tool result of type
T and a typed ToolError.
public abstract record ToolResult<T> : IEquatable<ToolResult<T>>
Type Parameters
T
- Inheritance
-
ToolResult<T>
- Implements
-
IEquatable<ToolResult<T>>
- Derived
- Inherited Members
Remarks
This is a deliberately small, local implementation (no
OneOf/Result NuGet dependency). Use
Ok(T) / Err(ToolError) to construct,
pattern-match on ToolResult<T>.OkResult /
ToolResult<T>.ErrResult to consume, or call
TryGetValue(out T) / TryGetError(out ToolError).
Methods
Err(ToolError)
Constructs a failed result.
public static ToolResult<T> Err(ToolError error)
Parameters
errorToolError
Returns
- ToolResult<T>
Ok(T)
Constructs a successful result.
public static ToolResult<T> Ok(T value)
Parameters
valueT
Returns
- ToolResult<T>
TryGetError(out ToolError)
Tries to extract the error.
public bool TryGetError(out ToolError error)
Parameters
errorToolError
Returns
TryGetValue(out T)
Tries to extract the success value.
public bool TryGetValue(out T value)
Parameters
valueT