Expand description
The list side of DynamicData (DynamicData/List): changes of positions in a list, their change
sets, and the lists that produce them.
The types keep upstream’s names (Change<T>, ChangeSet<T>, IChangeSet<T>), which in .NET
differ from those of the cache side by their number of type parameters; here they are told
apart by their module, and the crate root re-exports those of the cache.
Modules§
- testing
- The aids for tests that DynamicData ships with the library (
List/Tests, namespaceDynamicData.Tests):ChangeSetAggregator<TObject>.
Structs§
- Change
- A change of a list (
Change<T>): of one item, or of a range of items. - Change
Aware List - A list that records its changes until they are captured (
ChangeAwareList<T>), batching consecutive insertions and removals into ranges as upstream does. - Change
Set - The changes of one edit of a list (
ChangeSet<T>): shared and immutable, as the change sets of caches are. - Group
- A group of the items of a list that share a group key (
Group<TObject, TGroup>, theIGroupof the change sets ofGroupOn): the grouping edits its list, and its observers watch it. A clone is the same group. - Immutable
Group - The state of a group of a list at one moment (
ImmutableGroup<TObject, TGroupKey>, theIGroupingof the change sets ofGroupWithImmutableState): a copy of its items. A clone is the same state. - Item
Change - The change of one item of a list (
ItemChange<T>). - Observable
List - A read-only list of the items of a sequence of change sets (
AnonymousObservableList<T>, the result ofAsObservableList). - Page
Change Set - The changes of a page of a list, and the page (
PageChangeSet<T>). - Range
Change - The items of a change of a range, and the index of the first (
RangeChange<T>). - Sort
Exception - The error of a sort that cannot find the position of an item (
SortException): a comparer that does not give a unique position to each item while a binary search is asked for, or an item that is not in the sorted collection. The operators end their sequence with it, as an exception thrown in an operator of upstream reachesOnError. - Source
List - The source of a reactive list (
SourceList<T>): edits make change sets, whichconnectdelivers to the operators. - Virtual
Change Set - The changes of a window of a list, and the window (
VirtualChangeSet<T>).
Enums§
- Change
Type - Whether a change is of one item or of a range (
ChangeType). - List
Change Reason - The reason of a change of a list (
ListChangeReason). - List
Filter Policy - How a dynamic filter of a list applies a new predicate (
ListFilterPolicy). - Sort
Options - The options of the sort of a list (
SortOptions).
Traits§
- Flatten
Buffer Result List Ex flatten_buffer_resultas a method of the sequences of buffers of change sets of lists.- IChange
Set - A change set of a list, of any form (
IChangeSet<T>): the plain one, and the paged and virtual ones, which hold a plain one with more parts. - IChange
SetAdaptor - Applies the change sets of a list to something else, such as a collection (
IChangeSetAdaptor<T>). - IExtended
List - A list with the range operations of DynamicData (
IExtendedList<T>, anIList<T>). - IGroup
- A group of the items of a list that share a group key, with the list of those items
(
IGroup<TObject, TGroup>): the items of the change sets ofGroupOnandGroupOnProperty. - IGrouping
- The state of a group of a list at one moment (
IGrouping<TObject, TGroupKey>): the items of the change sets ofGroupWithImmutableStateandGroupOnPropertyWithImmutableState. - IList
- A list that the changes of a list can be applied to (
System.Collections.Generic.IList<T>, with the forms ofListExas provided methods). - IObservable
List - A list that can be observed (
IObservableList<T>). - IPage
Change Set - A change set of a page of a list, with the description of the page (
IPageChangeSet<T>). - ISource
List - A list whose items are edited by its owner (
ISourceList<T>). - IVirtual
Change Set - A change set of a window of a list, with the description of the window (
IVirtualChangeSet<T>). - List
Change SetSource - A source of the change sets of a list: a sequence of change sets, or a list whose
Connect()is its sequence (the items of upstream’s collections of sources). - List
Change SetSources Ex MergeChangeSetsof an enumerable of sequences of change sets of lists (MergeChangeSets(this IEnumerable<IObservable<IChangeSet<TObject>>>, ..)): the sequences are enumerated when the merge is subscribed, and the merge completes after them unlesscompletableis false.- List
Source List Combine Ex And,Or,XorandExceptof an observable list of sources (And(this IObservableList<IObservable<IChangeSet<T>>>),And(this IObservableList<IObservableList<T>>),And(this IObservableList<ISourceList<T>>), ..): the result follows the sources as they are added to the list and removed from it.- List
Sources Combine Ex And,Or,XorandExceptof a collection of sources (And(this ICollection<IObservable<IChangeSet<T>>>), ..): the sources are subscribed in order when the result is subscribed.- Observable
List Change Sets Ex MergeChangeSetsof a sequence of sequences of change sets of lists (MergeChangeSets(this IObservable<IObservable<IChangeSet<TObject>>>, IEqualityComparer< TObject>? = null)).- Observable
List Ex - The operators of lists (
ObservableListEx). - Observable
Object List Ex - The operator of the sequences of change sets of lists of objects (
Rc<dyn Any>, whose items have no equality, so thatObservableListExdoes not apply to them). - Source
List Edit Convenience Ex - The edit conveniences of source lists (
SourceListEditConvenienceEx), implemented for every source list. - Source
List Ex - The operators of lists (
SourceListEx, and the extension methods ofObservableListExonIObservableListandISourceList). - Switch
List Ex Switchof a sequence of lists or of sequences of change sets.
Functions§
- binary_
search_ by - The index of
valueby a comparison, or the bitwise complement of where it belongs (ListEx.BinarySearch):Err(index)for the latter. - clear_
or_ remove_ many - Removes the items of the change, or clears the list when they are all of it
(
ListEx.ClearOrRemoveMany). - clone_
changes - Applies the changes to
target(ListEx.Clone(IList<T>, IChangeSet<T>)). - clone_
changes_ with - Applies the changes to
target, comparing items withcomparer(ListEx.Clone(IList<T>, IEnumerable<Change<T>>, IEqualityComparer<T>)). - flatten
- The changes of the change set as changes of one item each (
Flatten,ItemChangeEnumerator): an added range becomes additions and a removed range or a clear removals, numbered from the index of the range, or from the last index known when the range has none. - flatten_
buffer_ result - The buffers of change sets, each as one change set; the empty buffers are left out
(
FlattenBufferResult(IObservable<IList<IChangeSet<T>>>)). - remove_
many - Removes the items (
ListEx.RemoveMany): by their indexes from the last, unless an item is there more than once, when each is removed by a search. - replace
- Replaces
originalwithreplace_with(ListEx.Replace). - replace_
or_ add - Replaces
originalwithreplace_with, or adds it whenoriginalis not in the list (ListEx.ReplaceOrAdd). - transform_
change_ set - The change set with each item converted by
transformer; the reasons and indexes stay (Transform(IChangeSet<TSource>, Func<TSource, TDestination>)). - yield_
without_ index - The changes without their indexes; moves, which make no sense without them, are left out
(
YieldWithoutIndex,WithoutIndexEnumerator).