aboutsummaryrefslogtreecommitdiffstats
path: root/src/AsyncEndpoint.cs
diff options
context:
space:
mode:
authorivarlovlie <git@ivarlovlie.no>2022-11-19 07:52:13 +0100
committerivarlovlie <git@ivarlovlie.no>2022-11-19 07:52:13 +0100
commitf48f101eb0dd6bbdca91d5f50b4ce4194d7369ab (patch)
treed7e659690d0936bd3d08e25d4e5229d76d517a08 /src/AsyncEndpoint.cs
downloaddotnet-endpoints-f48f101eb0dd6bbdca91d5f50b4ce4194d7369ab.tar.xz
dotnet-endpoints-f48f101eb0dd6bbdca91d5f50b4ce4194d7369ab.zip
feat: Initial commit
Diffstat (limited to 'src/AsyncEndpoint.cs')
-rw-r--r--src/AsyncEndpoint.cs40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/AsyncEndpoint.cs b/src/AsyncEndpoint.cs
new file mode 100644
index 0000000..10998ab
--- /dev/null
+++ b/src/AsyncEndpoint.cs
@@ -0,0 +1,40 @@
+namespace I2R.Endpoints;
+
+public static partial class AsyncEndpoint<BaseEndpoint>
+{
+ public static class Req<TRequest>
+ {
+ public abstract class Res<TResponse>
+ {
+ public abstract Task<TResponse> HandleAsync(
+ TRequest request,
+ CancellationToken cancellationToken = default
+ );
+ }
+
+ public abstract class NoRes
+ {
+ public abstract Task HandleAsync(
+ TRequest request,
+ CancellationToken cancellationToken = default
+ );
+ }
+ }
+
+ public static class NoReq
+ {
+ public abstract class Res<TResponse>
+ {
+ public abstract Task<TResponse> HandleAsync(
+ CancellationToken cancellationToken = default
+ );
+ }
+
+ public abstract class NoRes
+ {
+ public abstract Task HandleAsync(
+ CancellationToken cancellationToken = default
+ );
+ }
+ }
+} \ No newline at end of file