public ThrowTranslation(UnaryExpression throwExpression, ITranslationContext context)
        {
            Type = throwExpression.Type;

            // ReSharper disable once ConditionIsAlwaysTrueOrFalse
            // unary.Operand is null when using Expression.Rethrow():
            if ((throwExpression.Operand == null) || context.IsCatchBlockVariable(throwExpression.Operand))
            {
                EstimatedSize = _throw.Length;
                return;
            }

            _thrownItemTranslation = context.GetTranslationFor(throwExpression.Operand);
        }