PageRenderTime 19ms CodeModel.GetById 16ms app.highlight 1ms RepoModel.GetById 1ms app.codeStats 0ms

/NRefactory/ICSharpCode.NRefactory.VB/Ast/Statements/ExpressionStatement.cs

http://github.com/icsharpcode/ILSpy
C# | 40 lines | 28 code | 6 blank | 6 comment | 2 complexity | bd36ce8223f9c008ebb6bcf3b7c79086 MD5 | raw file
 1// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
 2// This code is distributed under MIT X11 license (for details please see \doc\license.txt)
 3
 4using System;
 5using System.IO;
 6
 7namespace ICSharpCode.NRefactory.VB.Ast
 8{
 9	/// <summary>
10	/// Expression
11	/// </summary>
12	// TODO this does not directly reflect the VB grammar!
13	public class ExpressionStatement : Statement
14	{
15		public Expression Expression {
16			get { return GetChildByRole (Roles.Expression); }
17			set { SetChildByRole (Roles.Expression, value); }
18		}
19		
20		public override S AcceptVisitor<T, S> (IAstVisitor<T, S> visitor, T data)
21		{
22			return visitor.VisitExpressionStatement(this, data);
23		}
24		
25		public ExpressionStatement()
26		{
27		}
28		
29		public ExpressionStatement(Expression expression)
30		{
31			this.Expression = expression;
32		}
33		
34		protected internal override bool DoMatch(AstNode other, PatternMatching.Match match)
35		{
36			ExpressionStatement o = other as ExpressionStatement;
37			return o != null && this.Expression.DoMatch(o.Expression, match);
38		}
39	}
40}