ICSharpCode.SharpDevelop.Dom.NRefactoryResolver.CSharpToVBNetConvertVisitor.VisitExpressionStatement C# (CSharp) Method

VisitExpressionStatement() public method

public VisitExpressionStatement ( ExpressionStatement expressionStatement, object data ) : object
expressionStatement ExpressionStatement
data object
return object
		public override object VisitExpressionStatement(ExpressionStatement expressionStatement, object data)
		{
			if (resolver.CompilationUnit == null)
				return base.VisitExpressionStatement(expressionStatement, data);
			
			// Transform event invocations that aren't already transformed by a parent IfStatement to RaiseEvent statement
			InvocationExpression eventInvocation = expressionStatement.Expression as InvocationExpression;
			if (eventInvocation != null && eventInvocation.TargetObject is IdentifierExpression) {
				MemberResolveResult mrr = resolver.ResolveInternal(eventInvocation.TargetObject, ExpressionContext.Default) as MemberResolveResult;
				if (mrr != null && mrr.ResolvedMember is IEvent) {
					ReplaceCurrentNode(new RaiseEventStatement(
						((IdentifierExpression)eventInvocation.TargetObject).Identifier,
						eventInvocation.Arguments));
				}
			}
			base.VisitExpressionStatement(expressionStatement, data);
			
			HandleAssignmentStatement(expressionStatement.Expression as AssignmentExpression);
			return null;
		}