Skip to content

Commit 868e402

Browse files
authored
Implicit operators from RequirementDecision > Task<RequirementDecision> and SkipDecision > Task<SkipDecision> for easier typing in non-async contexts (#968)
1 parent 68ce86f commit 868e402

File tree

2 files changed

+4
-0
lines changed

2 files changed

+4
-0
lines changed

src/ModularPipelines/Models/RequirementDecision.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,4 +37,6 @@ private RequirementDecision(bool success)
3737
public static implicit operator RequirementDecision(bool passed) => passed ? Passed : Failed(null);
3838

3939
public static implicit operator RequirementDecision(string reason) => Failed(reason);
40+
41+
public static implicit operator Task<RequirementDecision>(RequirementDecision decision) => Task.FromResult(decision);
4042
}

src/ModularPipelines/Models/SkipDecision.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,4 +37,6 @@ private SkipDecision(bool shouldSkip)
3737
public static implicit operator SkipDecision(bool shouldSkip) => shouldSkip ? Skip(null) : DoNotSkip;
3838

3939
public static implicit operator SkipDecision(string reason) => Skip(reason);
40+
41+
public static implicit operator Task<SkipDecision>(SkipDecision skipDecision) => Task.FromResult(skipDecision);
4042
}

0 commit comments

Comments
 (0)