Catel.ReSharper.CatelProperties.CSharp.Actions.IncludePropertyOnSerializationContextAction.ExecutePsiTransaction C# (CSharp) Method

ExecutePsiTransaction() protected method

protected ExecutePsiTransaction ( ISolution solution, IProgressIndicator progress ) : Action
solution ISolution
progress IProgressIndicator
return Action
        protected override Action<ITextControl> ExecutePsiTransaction(ISolution solution, IProgressIndicator progress)
        {
            if (_invocationExpression.ArgumentList.Arguments.Count == 4)
            {
                _invocationExpression.RemoveArgument(_invocationExpression.ArgumentList.Arguments[3]);
            }

            if (_invocationExpression.ArgumentList.Arguments.Count == 3
                && (_invocationExpression.ArgumentList.Arguments[2].Value is ICSharpLiteralExpression)
                && (_invocationExpression.ArgumentList.Arguments[2].Value as ICSharpLiteralExpression).Literal.GetTokenType() == CSharpTokenType.NULL_KEYWORD)
            {
                _invocationExpression.RemoveArgument(_invocationExpression.ArgumentList.Arguments[2]);
            }

            return null;
        }