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)
6
namespace ICSharpCode.NRefactory.VB.Ast
8
public class EventDeclaration : MemberDeclaration
10
public bool IsCustom { get; set; }
12
public static readonly Role<Accessor> AddHandlerRole = new Role<Accessor>("AddHandler", Accessor.Null);
13
public static readonly Role<Accessor> RemoveHandlerRole = new Role<Accessor>("RemoveHandler", Accessor.Null);
14
public static readonly Role<Accessor> RaiseEventRole = new Role<Accessor>("RaiseEvent", Accessor.Null);
16
public Identifier Name {
17
get { return GetChildByRole(Roles.Identifier); }
18
set { SetChildByRole(Roles.Identifier, value); }
21
public AstType ReturnType {
22
get { return GetChildByRole(Roles.Type); }
23
set { SetChildByRole(Roles.Type, value); }
26
public AstNodeCollection<ParameterDeclaration> Parameters {
27
get { return GetChildrenByRole(Roles.Parameter); }
30
public AstNodeCollection<InterfaceMemberSpecifier> ImplementsClause {
31
get { return GetChildrenByRole(InterfaceMemberSpecifier.InterfaceMemberSpecifierRole); }
34
public Accessor AddHandlerBlock {
35
get { return GetChildByRole(AddHandlerRole); }
36
set { SetChildByRole(AddHandlerRole, value); }
39
public Accessor RemoveHandlerBlock {
40
get { return GetChildByRole(RemoveHandlerRole); }
41
set { SetChildByRole(RemoveHandlerRole, value); }
44
public Accessor RaiseEventBlock {
45
get { return GetChildByRole(RaiseEventRole); }
46
set { SetChildByRole(RaiseEventRole, value); }
49
protected internal override bool DoMatch(AstNode other, ICSharpCode.NRefactory.PatternMatching.Match match)
51
throw new NotImplementedException();
54
public override S AcceptVisitor<T, S>(IAstVisitor<T, S> visitor, T data)
56
return visitor.VisitEventDeclaration(this, data);