Table of Contents

Class SpecificationExtensions

Namespace
Framework.Patterns.Pure.Specification
Assembly
Assembly-CSharp.dll

ISpecification<T>에 .And() / .Or() / .Not() 확장 메서드 제공. 조합 표현을 간결하게 유지. [규칙] static class — 상태 보유 금지. [규칙] 반환값은 새 ISpecification<T> 인스턴스.

public static class SpecificationExtensions
Inheritance
object
SpecificationExtensions

Methods

And<T>(ISpecification<T>, ISpecification<T>)

두 Specification AND 조합.

public static ISpecification<T> And<T>(this ISpecification<T> left, ISpecification<T> right)

Parameters

left ISpecification<T>
right ISpecification<T>

Returns

ISpecification<T>

Type Parameters

T

Not<T>(ISpecification<T>)

Specification 결과 반전.

public static ISpecification<T> Not<T>(this ISpecification<T> spec)

Parameters

spec ISpecification<T>

Returns

ISpecification<T>

Type Parameters

T

Or<T>(ISpecification<T>, ISpecification<T>)

두 Specification OR 조합.

public static ISpecification<T> Or<T>(this ISpecification<T> left, ISpecification<T> right)

Parameters

left ISpecification<T>
right ISpecification<T>

Returns

ISpecification<T>

Type Parameters

T