Skip to content

Commit

Permalink
remove dead code
Browse files Browse the repository at this point in the history
  • Loading branch information
smdn committed Mar 31, 2024
1 parent e8c7ac2 commit 113ed39
Showing 1 changed file with 0 additions and 50 deletions.
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
// SPDX-FileCopyrightText: 2018 HiroyukiSakoh
// SPDX-FileCopyrightText: 2023 smdn <smdn@smdn.jp>
// SPDX-License-Identifier: MIT
using System;
using System.Collections.Specialized;
using System.Diagnostics.CodeAnalysis;
using System.Linq;
using System.Text;

namespace Smdn.Net.EchonetLite.Extensions
Expand Down Expand Up @@ -47,51 +43,5 @@ public static string GetDebugString(this EchonetProperty property)
sb.Append(property.Spec.AnnoRequired ? "(Req)" : "");
return sb.ToString();
}

/// <summary>
/// <see cref="NotifyCollectionChangedEventArgs"/>から、コレクションに追加されたアイテムの取得を試みます。
/// </summary>
/// <typeparam name="TItem">取得を試みるコレクションアイテムの型。</typeparam>
/// <param name="e">イベント引数<see cref="NotifyCollectionChangedEventArgs"/>。</param>
/// <param name="addedItem">取得できた場合は、コレクションに追加されたアイテム。</param>
/// <returns>取得できた場合は<see langword="true"/>、そうでなければ<see langword="false"/>。</returns>
/// <exception cref="ArgumentNullException">イベント引数を<see langword="null"/>にすることはできません。</exception>
public static bool TryGetAddedItem<TItem>(this NotifyCollectionChangedEventArgs? e, [NotNullWhen(true)] out TItem? addedItem) where TItem : class
{
if (e is null)
throw new ArgumentNullException(nameof(e));

addedItem = default;

if (e.Action != NotifyCollectionChangedAction.Add && e.Action != NotifyCollectionChangedAction.Replace)
return false;

addedItem = e.NewItems?.OfType<TItem>()?.FirstOrDefault();

return addedItem is not null;
}

/// <summary>
/// <see cref="NotifyCollectionChangedEventArgs"/>から、コレクションから削除されたアイテムの取得を試みます。
/// </summary>
/// <typeparam name="TItem">取得を試みるコレクションアイテムの型。</typeparam>
/// <param name="e">イベント引数<see cref="NotifyCollectionChangedEventArgs"/>。</param>
/// <param name="removedItem">取得できた場合は、コレクションから削除されたアイテム。</param>
/// <returns>取得できた場合は<see langword="true"/>、そうでなければ<see langword="false"/>。</returns>
/// <exception cref="ArgumentNullException">イベント引数を<see langword="null"/>にすることはできません。</exception>
public static bool TryGetRemovedItem<TItem>(this NotifyCollectionChangedEventArgs? e, [NotNullWhen(true)] out TItem? removedItem) where TItem : class
{
if (e is null)
throw new ArgumentNullException(nameof(e));

removedItem = default;

if (e.Action != NotifyCollectionChangedAction.Remove && e.Action != NotifyCollectionChangedAction.Replace)
return false;

removedItem = e.OldItems?.OfType<TItem>()?.FirstOrDefault();

return removedItem is not null;
}
}
}

0 comments on commit 113ed39

Please sign in to comment.