public void chain(ChainableComparer <T> lastComparer) { if (_nextComparer == null) { _nextComparer = lastComparer; } else { _nextComparer.chain(lastComparer); } }
public ChainableComparer <T> Then(ChainableComparer <T> comparer) { if (_nextComparer == null) { _nextComparer = comparer; } else { _lastComparer.chain(comparer); } _lastComparer = comparer; return(this); }
public static ChainableComparer <T> Then <T>(this ChainableComparer <T> chainable, Comparison <T> next, Direction sortDirection) { return(chainable.Then(new ComparisonComparer <T>(next, sortDirection))); }
public static ChainableComparer <T> Then <T>(this ChainableComparer <T> chainable, Comparison <T> next) { return(chainable.Then(new ComparisonComparer <T>(next))); }
public static ChainableComparer <T> Then <T, U>(this ChainableComparer <T> chainable, Func <T, U> keySelector, Direction sortDirection) { return(chainable.Then(new SelectorComparer <T, U>(keySelector, sortDirection))); }