Browse Source

Add Contains overload for IEnumerable<IEntity<ulong>>

Also actually implement GetHashCode
pull/181/head
Finite Reality 9 years ago
parent
commit
f444429cf1
2 changed files with 6 additions and 1 deletions
  1. +5
    -0
      src/Discord.Net/Extensions/CollectionExtensions.cs
  2. +1
    -1
      src/Discord.Net/Rest/Entities/Roles/Role.cs

+ 5
- 0
src/Discord.Net/Extensions/CollectionExtensions.cs View File

@@ -14,6 +14,11 @@ namespace Discord
=> new ConcurrentDictionaryWrapper<TValue>(query, () => source.Count); => new ConcurrentDictionaryWrapper<TValue>(query, () => source.Count);
public static IReadOnlyCollection<TValue> ToReadOnlyCollection<TValue>(this IEnumerable<TValue> query, Func<int> countFunc) public static IReadOnlyCollection<TValue> ToReadOnlyCollection<TValue>(this IEnumerable<TValue> query, Func<int> countFunc)
=> new ConcurrentDictionaryWrapper<TValue>(query, countFunc); => new ConcurrentDictionaryWrapper<TValue>(query, countFunc);

public static bool Contains(this IEnumerable<IEntity<ulong>> roles, ulong id)
{
return roles.Any(x => x.Id == id);
}
} }


[DebuggerDisplay(@"{DebuggerDisplay,nq}")] [DebuggerDisplay(@"{DebuggerDisplay,nq}")]


+ 1
- 1
src/Discord.Net/Rest/Entities/Roles/Role.cs View File

@@ -73,7 +73,7 @@ namespace Discord


public override int GetHashCode() public override int GetHashCode()
{ {
return base.GetHashCode();
return Id.GetHashCode();
} }


public Role Clone() => MemberwiseClone() as Role; public Role Clone() => MemberwiseClone() as Role;


Loading…
Cancel
Save