This commit is contained in:
neuecc 2024-08-13 20:33:53 +09:00
commit 7162edd503
5 changed files with 11 additions and 6 deletions

View File

@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
timeout-minutes: 10 timeout-minutes: 10
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- uses: Cysharp/Actions/.github/actions/setup-dotnet@main - uses: Cysharp/Actions/.github/actions/setup-dotnet@main
- run: dotnet build -c Debug - run: dotnet build -c Debug
- run: dotnet test -c Debug --no-build - run: dotnet test -c Debug --no-build

View File

@ -17,7 +17,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
timeout-minutes: 10 timeout-minutes: 10
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v4
- uses: Cysharp/Actions/.github/actions/setup-dotnet@main - uses: Cysharp/Actions/.github/actions/setup-dotnet@main
# build and pack # build and pack
- run: dotnet build -c Release -p:Version=${{ inputs.tag }} - run: dotnet build -c Release -p:Version=${{ inputs.tag }}

View File

@ -1,4 +1,4 @@
using ObservableCollections.Internal; using ObservableCollections.Internal;
using System; using System;
using System.Collections; using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
@ -16,7 +16,12 @@ namespace ObservableCollections
ISynchronizedView<T, TView> CreateView<TView>(Func<T, TView> transform, bool reverse = false); ISynchronizedView<T, TView> CreateView<TView>(Func<T, TView> transform, bool reverse = false);
} }
public interface IReadOnlyObservableDictionary<TKey, TValue> : public interface IReadOnlyObservableList<T> :
IReadOnlyList<T>, IObservableCollection<T>
{
}
public interface IReadOnlyObservableDictionary<TKey, TValue> :
IReadOnlyDictionary<TKey, TValue>, IObservableCollection<KeyValuePair<TKey, TValue>> IReadOnlyDictionary<TKey, TValue>, IObservableCollection<KeyValuePair<TKey, TValue>>
{ {
} }

View File

@ -7,7 +7,7 @@ using System.Linq;
namespace ObservableCollections namespace ObservableCollections
{ {
public sealed partial class ObservableList<T> : IList<T>, IReadOnlyList<T>, IObservableCollection<T> public sealed partial class ObservableList<T> : IList<T>, IReadOnlyObservableList<T>
{ {
public ISynchronizedView<T, TView> CreateView<TView>(Func<T, TView> transform, bool reverse = false) public ISynchronizedView<T, TView> CreateView<TView>(Func<T, TView> transform, bool reverse = false)
{ {

View File

@ -7,7 +7,7 @@ using System.Runtime.InteropServices;
namespace ObservableCollections namespace ObservableCollections
{ {
public sealed partial class ObservableList<T> : IList<T>, IReadOnlyList<T>, IObservableCollection<T> public sealed partial class ObservableList<T> : IList<T>, IReadOnlyObservableList<T>
{ {
readonly List<T> list; readonly List<T> list;
public object SyncRoot { get; } = new(); public object SyncRoot { get; } = new();