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

http://github.com/icsharpcode/ILSpy · C# · 35 lines · 24 code · 5 blank · 6 comment · 2 complexity · 62b7da0b7e8f7ff66f3a923002afa3c1 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. using System;
  4. using System.IO;
  5. namespace ICSharpCode.NRefactory.VB.Ast
  6. {
  7. /// <summary>
  8. /// Label:
  9. /// </summary>
  10. public class LabelDeclarationStatement : Statement
  11. {
  12. /// <remarks>either PrimitiveExpression or IdentifierExpression</remarks>
  13. public Expression Label {
  14. get { return GetChildByRole(Roles.Expression); }
  15. set { SetChildByRole(Roles.Expression, value); }
  16. }
  17. public VBTokenNode Colon {
  18. get { return GetChildByRole(Roles.Colon); }
  19. }
  20. public override S AcceptVisitor<T, S> (IAstVisitor<T, S> visitor, T data)
  21. {
  22. return visitor.VisitLabelDeclarationStatement(this, data);
  23. }
  24. protected internal override bool DoMatch(AstNode other, PatternMatching.Match match)
  25. {
  26. LabelDeclarationStatement o = other as LabelDeclarationStatement;
  27. return o != null && this.Label.DoMatch(o.Label, match);
  28. }
  29. }
  30. }