From e7783d7808c590b36a711f7cf838ad3ba3e4813e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mike=20Kr=C3=BCger?= Date: Wed, 31 Oct 2012 12:21:30 +0100 Subject: [PATCH] Revert "[TypeSystem] Added a method to get only defined members with a filter" This reverts commit aa324f018acf72ef85bf61408ad87f9e44577e26. --- .../TypeSystem/ITypeDefinition.cs | 9 +-------- .../DefaultResolvedTypeDefinition.cs | 18 ++++-------------- 2 files changed, 5 insertions(+), 22 deletions(-) diff --git a/ICSharpCode.NRefactory/TypeSystem/ITypeDefinition.cs b/ICSharpCode.NRefactory/TypeSystem/ITypeDefinition.cs index 1ec753368c..ccc627f45e 100644 --- a/ICSharpCode.NRefactory/TypeSystem/ITypeDefinition.cs +++ b/ICSharpCode.NRefactory/TypeSystem/ITypeDefinition.cs @@ -103,14 +103,7 @@ namespace ICSharpCode.NRefactory.TypeSystem IList NestedTypes { get; } IList Members { get; } - - /// - /// Gets the members that are defined in this type. - /// - /// The filter used to select which members to return. - /// The filter is tested on the original member definitions (before specialization). - IList GetDefinedMembers (Predicate filter); - + IEnumerable Fields { get; } IEnumerable Methods { get; } IEnumerable Properties { get; } diff --git a/ICSharpCode.NRefactory/TypeSystem/Implementation/DefaultResolvedTypeDefinition.cs b/ICSharpCode.NRefactory/TypeSystem/Implementation/DefaultResolvedTypeDefinition.cs index 236a3c1b05..b6cd1e09ce 100644 --- a/ICSharpCode.NRefactory/TypeSystem/Implementation/DefaultResolvedTypeDefinition.cs +++ b/ICSharpCode.NRefactory/TypeSystem/Implementation/DefaultResolvedTypeDefinition.cs @@ -282,7 +282,7 @@ namespace ICSharpCode.NRefactory.TypeSystem.Implementation MemberList memberList; - MemberList GetMemberList(Predicate filter = null) + MemberList GetMemberList() { var result = LazyInit.VolatileRead(ref this.memberList); if (result != null) { @@ -296,8 +296,6 @@ namespace ICSharpCode.NRefactory.TypeSystem.Implementation ITypeResolveContext parentContextForPart = part.CreateResolveContext(parentContext); ITypeResolveContext contextForPart = parentContextForPart.WithCurrentTypeDefinition(this); foreach (var member in part.Members) { - if (filter != null && !filter(member)) - continue; IUnresolvedMethod method = member as IUnresolvedMethod; if (method != null && method.IsPartial) { // Merge partial method declaration and implementation @@ -330,11 +328,8 @@ namespace ICSharpCode.NRefactory.TypeSystem.Implementation if (kind == TypeKind.Class && !this.IsStatic && !unresolvedMembers.Any(m => m.EntityType == EntityType.Constructor && !m.IsStatic) || kind == TypeKind.Enum || kind == TypeKind.Struct) { - var defaultConstructor = DefaultUnresolvedMethod.CreateDefaultConstructor(parts[0]); - if (filter == null || filter(defaultConstructor)) { - contextPerMember.Add(parts[0].CreateResolveContext(parentContext).WithCurrentTypeDefinition(this)); - unresolvedMembers.Add(defaultConstructor); - } + contextPerMember.Add(parts[0].CreateResolveContext(parentContext).WithCurrentTypeDefinition(this)); + unresolvedMembers.Add(DefaultUnresolvedMethod.CreateDefaultConstructor(parts[0])); } } result = new MemberList(contextPerMember, unresolvedMembers, partialMethodInfos); @@ -344,12 +339,7 @@ namespace ICSharpCode.NRefactory.TypeSystem.Implementation public IList Members { get { return GetMemberList(); } } - - public IList GetDefinedMembers (Predicate filter) - { - return GetMemberList(filter); - } - + public IEnumerable Fields { get { var members = GetMemberList();