public RegexNodeAlternation(params RegexNode[] expressions)
{
if (expressions == null)
{
throw new ArgumentNullException("expressions", "Expression list cannot be null.");
}
for (int i = 0; i < expressions.Length; i++)
{
if (expressions[i] == null)
{
throw new ArgumentNullException("expressions", "All alternating expressions must be not null.");
}
}
this.expressions = expressions;
}