Skip to content

Commit 1f0ba1d

Browse files
committed
Add [Obsolete] TypeInfo.GetXXX(recursive) API for backward compatibility
1 parent 4e27f5e commit 1f0ba1d

1 file changed

Lines changed: 16 additions & 0 deletions

File tree

Orm/Xtensive.Orm/Orm/Model/TypeInfo.cs

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,10 @@ public IReadOnlySet<TypeInfo> RecursiveInterfaces
132132
}
133133

134134
private HashSet<TypeInfo> implementors;
135+
136+
/// <summary>
137+
/// Gets the direct implementors of this instance.
138+
/// </summary>
135139
public IReadOnlySet<TypeInfo> Implementors => implementors ?? EmptyTypes;
136140

137141
private IReadOnlyList<TypeInfo> recursiveImplementors;
@@ -157,6 +161,18 @@ public IReadOnlyList<TypeInfo> RecursiveImplementors
157161
}
158162
}
159163

164+
[Obsolete("Use Implementors/RecursiveImplementors properties instead")]
165+
public IEnumerable<TypeInfo> GetImplementors(bool recursive = false) => recursive ? RecursiveImplementors : Implementors;
166+
167+
[Obsolete("Use Interfaces/RecursiveInterfaces properties instead")]
168+
public IEnumerable<TypeInfo> GetInterfaces(bool recursive = false) => recursive ? RecursiveInterfaces : Interfaces;
169+
170+
[Obsolete("Use Descendants/RecursiveDescendants properties instead")]
171+
public IEnumerable<TypeInfo> GetDescendants(bool recursive) => recursive ? RecursiveDescendants : Descendants;
172+
173+
[Obsolete("Use Ancestors property instead")]
174+
public IReadOnlyList<TypeInfo> GetAncestors() => Ancestors;
175+
160176
private IReadOnlySet<TypeInfo> typeWithAncestorsAndInterfaces;
161177
public IReadOnlySet<TypeInfo> TypeWithAncestorsAndInterfaces
162178
{

0 commit comments

Comments
 (0)