private static IEnumerable<UnaryOperatorSignature> GetBuiltInSignatures(UnaryOperatorKind kind)
{
switch (kind)
{
case UnaryOperatorKind.Plus:
return BuiltInIdentitySignatures;
case UnaryOperatorKind.Minus:
return BuiltInNegationSignatures;
case UnaryOperatorKind.BitwiseNot:
return BuiltInBitwiseNotSignatures;
case UnaryOperatorKind.LogicalNot:
return BuiltInLogicalNotSignatures;
case UnaryOperatorKind.PostDecrement:
return BuiltInPostDecrementSignatures;
case UnaryOperatorKind.PostIncrement:
return BuiltInPostIncrementSignatures;
case UnaryOperatorKind.PreDecrement:
return BuiltInPreDecrementSignatures;
case UnaryOperatorKind.PreIncrement:
return BuiltInPreIncrementSignatures;
default:
throw new ArgumentOutOfRangeException(nameof(kind), kind.ToString());
}
}
}