diff --git a/ICSharpCode.NRefactory.CSharp/Resolver/CSharpOperators.cs b/ICSharpCode.NRefactory.CSharp/Resolver/CSharpOperators.cs index 1588b6b2de..ea2d9cb1c0 100644 --- a/ICSharpCode.NRefactory.CSharp/Resolver/CSharpOperators.cs +++ b/ICSharpCode.NRefactory.CSharp/Resolver/CSharpOperators.cs @@ -151,6 +151,11 @@ namespace ICSharpCode.NRefactory.CSharp.Resolver get { return SymbolKind.Operator; } } + [Obsolete("Use the SymbolKind property instead.")] + EntityType IEntity.EntityType { + get { return EntityType.Operator; } + } + DomRegion IEntity.Region { get { return DomRegion.Empty; } } diff --git a/ICSharpCode.NRefactory.CSharp/Resolver/ReducedExtensionMethod.cs b/ICSharpCode.NRefactory.CSharp/Resolver/ReducedExtensionMethod.cs index 49b73670b3..0f161bf701 100644 --- a/ICSharpCode.NRefactory.CSharp/Resolver/ReducedExtensionMethod.cs +++ b/ICSharpCode.NRefactory.CSharp/Resolver/ReducedExtensionMethod.cs @@ -273,6 +273,13 @@ namespace ICSharpCode.NRefactory.CSharp } } + [Obsolete("Use the SymbolKind property instead.")] + public EntityType EntityType { + get { + return baseMethod.EntityType; + } + } + public DomRegion Region { get { return baseMethod.Region; diff --git a/ICSharpCode.NRefactory/TypeSystem/EntityType.cs b/ICSharpCode.NRefactory/TypeSystem/EntityType.cs index bfb7cac147..b0124200a8 100644 --- a/ICSharpCode.NRefactory/TypeSystem/EntityType.cs +++ b/ICSharpCode.NRefactory/TypeSystem/EntityType.cs @@ -20,54 +20,44 @@ using System; namespace ICSharpCode.NRefactory.TypeSystem { - public enum SymbolKind : byte + [Obsolete("Use SymbolKind instead")] + public enum EntityType : byte { - None, + None = SymbolKind.None, /// - TypeDefinition, + TypeDefinition = SymbolKind.TypeDefinition, /// - Field, + Field = SymbolKind.Field, /// /// The symbol is a property, but not an indexer. /// /// - Property, + Property = SymbolKind.Property, /// /// The symbol is an indexer, not a regular property. /// /// - Indexer, + Indexer = SymbolKind.Indexer, /// - Event, + Event = SymbolKind.Event, /// /// The symbol is a method which is not an operator/constructor/destructor or accessor. /// /// - Method, + Method = SymbolKind.Method, /// /// The symbol is a user-defined operator. /// /// - Operator, + Operator = SymbolKind.Operator, /// - Constructor, + Constructor = SymbolKind.Constructor, /// - Destructor, + Destructor = SymbolKind.Destructor, /// /// The accessor method for a property getter/setter or event add/remove. /// /// - Accessor, - /// - Namespace, - /// - /// The symbol is a variable, but not a parameter. - /// - /// - Variable, - /// - Parameter, - /// - TypeParameter, + Accessor = SymbolKind.Accessor, } } diff --git a/ICSharpCode.NRefactory/TypeSystem/IEntity.cs b/ICSharpCode.NRefactory/TypeSystem/IEntity.cs index 214d536c10..e65831a17e 100644 --- a/ICSharpCode.NRefactory/TypeSystem/IEntity.cs +++ b/ICSharpCode.NRefactory/TypeSystem/IEntity.cs @@ -95,6 +95,12 @@ namespace ICSharpCode.NRefactory.TypeSystem /// public interface IEntity : ISymbol, ICompilationProvider, INamedElement, IHasAccessibility { + /// + /// Gets the entity type. + /// + [Obsolete("Use the SymbolKind property instead.")] + EntityType EntityType { get; } + /// /// Gets the short name of the entity. /// diff --git a/ICSharpCode.NRefactory/TypeSystem/ISymbol.cs b/ICSharpCode.NRefactory/TypeSystem/ISymbol.cs index 7ed3e2c620..24286b3431 100644 --- a/ICSharpCode.NRefactory/TypeSystem/ISymbol.cs +++ b/ICSharpCode.NRefactory/TypeSystem/ISymbol.cs @@ -20,6 +20,57 @@ using System; namespace ICSharpCode.NRefactory.TypeSystem { + public enum SymbolKind : byte + { + None, + /// + TypeDefinition, + /// + Field, + /// + /// The symbol is a property, but not an indexer. + /// + /// + Property, + /// + /// The symbol is an indexer, not a regular property. + /// + /// + Indexer, + /// + Event, + /// + /// The symbol is a method which is not an operator/constructor/destructor or accessor. + /// + /// + Method, + /// + /// The symbol is a user-defined operator. + /// + /// + Operator, + /// + Constructor, + /// + Destructor, + /// + /// The accessor method for a property getter/setter or event add/remove. + /// + /// + Accessor, + /// + Namespace, + /// + /// The symbol is a variable, but not a parameter. + /// + /// + Variable, + /// + Parameter, + /// + TypeParameter, + } + /// /// Interface for type system symbols. /// diff --git a/ICSharpCode.NRefactory/TypeSystem/Implementation/AbstractResolvedEntity.cs b/ICSharpCode.NRefactory/TypeSystem/Implementation/AbstractResolvedEntity.cs index 445aa33184..de50cb2e81 100644 --- a/ICSharpCode.NRefactory/TypeSystem/Implementation/AbstractResolvedEntity.cs +++ b/ICSharpCode.NRefactory/TypeSystem/Implementation/AbstractResolvedEntity.cs @@ -45,6 +45,11 @@ namespace ICSharpCode.NRefactory.TypeSystem.Implementation get { return unresolved.SymbolKind; } } + [Obsolete("Use the SymbolKind property instead.")] + public EntityType EntityType { + get { return (EntityType)unresolved.SymbolKind; } + } + public DomRegion Region { get { return unresolved.Region; } } diff --git a/ICSharpCode.NRefactory/TypeSystem/Implementation/DefaultResolvedTypeDefinition.cs b/ICSharpCode.NRefactory/TypeSystem/Implementation/DefaultResolvedTypeDefinition.cs index 9899c0edff..275e97972f 100644 --- a/ICSharpCode.NRefactory/TypeSystem/Implementation/DefaultResolvedTypeDefinition.cs +++ b/ICSharpCode.NRefactory/TypeSystem/Implementation/DefaultResolvedTypeDefinition.cs @@ -114,6 +114,11 @@ namespace ICSharpCode.NRefactory.TypeSystem.Implementation get { return parts[0].SymbolKind; } } + [Obsolete("Use the SymbolKind property instead.")] + public EntityType EntityType { + get { return (EntityType)parts[0].SymbolKind; } + } + public virtual TypeKind Kind { get { return parts[0].Kind; } } diff --git a/ICSharpCode.NRefactory/TypeSystem/Implementation/SpecializedMember.cs b/ICSharpCode.NRefactory/TypeSystem/Implementation/SpecializedMember.cs index 566ec7269c..48743dd028 100644 --- a/ICSharpCode.NRefactory/TypeSystem/Implementation/SpecializedMember.cs +++ b/ICSharpCode.NRefactory/TypeSystem/Implementation/SpecializedMember.cs @@ -177,6 +177,11 @@ namespace ICSharpCode.NRefactory.TypeSystem.Implementation get { return baseMember.SymbolKind; } } + [Obsolete("Use the SymbolKind property instead.")] + public EntityType EntityType { + get { return baseMember.EntityType; } + } + public DomRegion Region { get { return baseMember.Region; } }