5
// Mike Krüger <mkrueger@novell.com>
7
// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
9
// Permission is hereby granted, free of charge, to any person obtaining
10
// a copy of this software and associated documentation files (the
11
// "Software"), to deal in the Software without restriction, including
12
// without limitation the rights to use, copy, modify, merge, publish,
13
// distribute, sublicense, and/or sell copies of the Software, and to
14
// permit persons to whom the Software is furnished to do so, subject to
15
// the following conditions:
17
// The above copyright notice and this permission notice shall be
18
// included in all copies or substantial portions of the Software.
20
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
21
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
22
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
23
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
24
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
25
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
26
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
30
using System.Collections.Generic;
31
using MonoDevelop.Projects.Dom.Parser;
33
namespace MonoDevelop.Projects.Dom
35
public interface IMember : IComparable, IDomVisitable
41
IReturnType ReturnType {
49
IEnumerable<IReturnType> ExplicitInterfaces {
57
string Documentation {
61
DomLocation Location {
65
DomRegion BodyRegion {
73
IEnumerable<IAttribute> Attributes {
85
bool IsExplicitDeclaration {
89
System.Xml.XmlNode GetMonodocDocumentation ();
90
bool IsAccessibleFrom (ProjectDom dom, IType calledType, IMember member, bool includeProtected);
92
#region ModifierAccessors
93
bool IsObsolete { get; }
94
bool IsPrivate { get; }
95
bool IsInternal { get; }
96
bool IsProtected { get; }
97
bool IsPublic { get; }
98
bool IsProtectedAndInternal { get; }
99
bool IsProtectedOrInternal { get; }
101
bool IsAbstract { get; }
102
bool IsVirtual { get; }
103
bool IsSealed { get; }
104
bool IsStatic { get; }
105
bool IsOverride { get; }
106
bool IsReadonly { get; }
107
bool IsConst { get; }
109
bool IsPartial { get; }
111
bool IsExtern { get; }
112
bool IsVolatile { get; }
113
bool IsUnsafe { get; }
114
bool IsOverloads { get; }
115
bool IsWithEvents { get; }
116
bool IsDefault { get; }
117
bool IsFixed { get; }
119
bool IsSpecialName { get; }
120
bool IsFinal { get; }
121
bool IsLiteral { get; }