This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public class EfficientIterator<TOne, TTwo> | |
{ | |
private Action<TOne, TTwo> always = (one, two) => { }; | |
private Action<TOne, TTwo> match = (one, two) => { }; | |
private Action<TOne> oneOnly = (one) => { }; | |
private Action<TTwo> twoOnly = (two) => { }; | |
private readonly Func<TOne, TTwo, int> compare; | |
public Action<TOne, TTwo> Always { set { this.always = value; } } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
using System.Diagnostics; | |
using System.Globalization; | |
namespace TC | |
{ | |
/// <summary>Starts a process and allows capturing the output (both standard and error).</summary> | |
public static class ProcessStarter | |
{ | |
/// <summary>Starts a new process with the specified file name and arguments.</summary> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
using System.Text; | |
using System.Text.RegularExpressions; | |
namespace TC | |
{ | |
/// <summary>Makes text pretty, replacing certain patterns with their typographically correct equivalent.</summary> | |
public static class TextPrettifier | |
{ | |
private static readonly Regex |