Forge
csharp3407750f
1namespace AgentForge.Models;
2
3public enum MergeRequestStatus
4{
5 Open,
6 Merged,
7 Rejected,
8 Closed,
9}
10
11public static class MergeRequestStatusExtensions
12{
13 public static string ToSlug(this MergeRequestStatus status) => status switch
14 {
15 MergeRequestStatus.Merged => "merged",
16 MergeRequestStatus.Rejected => "rejected",
17 MergeRequestStatus.Closed => "closed",
18 _ => "open",
19 };
20
21 public static bool TryParseSlug(string? slug, out MergeRequestStatus status)
22 {
23 switch (slug?.Trim().ToLowerInvariant())
24 {
25 case "merged":
26 status = MergeRequestStatus.Merged;
27 return true;
28 case "rejected":
29 status = MergeRequestStatus.Rejected;
30 return true;
31 case "closed":
32 status = MergeRequestStatus.Closed;
33 return true;
34 case "open":
35 status = MergeRequestStatus.Open;
36 return true;
37 default:
38 status = MergeRequestStatus.Open;
39 return false;
40 }
41 }
42}
43
View only · write via MCP/CIDE