RpcList<T extends IRpcSerializable> class

Specialized list for objects implementing IRpcSerializable.

An Iterable, so for-in and every collection method work on it, with index access and in-place edits. Serialized as {'items': [...]}.

Not a List on purpose: a codec or jsonEncode writes a List as a bare array, and a nested RpcList would then lose its items envelope.

Inheritance
Implemented types

Constructors

RpcList()
Creates an empty list.
RpcList.empty()
Creates an empty growable list.
RpcList.filled(int length, T fill)
Creates a list of length elements, each set to fill.
RpcList.from(List<T> items)
Creates a list from an existing collection.

Properties

first → T
The first element.
no setterinherited
hashCode → int
The hash code for this object.
no setteroverride
isEmpty → bool
Whether this collection has no elements.
no setterinherited
isNotEmpty → bool
Whether this collection has at least one element.
no setterinherited
iterator → Iterator<T>
A new Iterator that allows iterating the elements of this Iterable.
no setteroverride
last → T
The last element.
no setterinherited
length → int
The number of elements in this Iterable.
no setteroverride
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
single → T
Checks that this iterable has only one element, and returns that element.
no setterinherited

Methods

add(T value) → void
Adds value to the end.
addAll(Iterable<T> items) → void
Adds every element of items to the end.
any(bool test(T element)) → bool
Checks whether any element of this iterable satisfies test.
inherited
cast<R>() → Iterable<R>
A view of this iterable as an iterable of R instances.
inherited
clear() → void
Removes every element.
contains(Object? element) → bool
Whether the collection contains an element equal to element.
inherited
elementAt(int index) → T
Returns the indexth element.
override
every(bool test(T element)) → bool
Checks whether every element of this iterable satisfies test.
inherited
expand<T>(Iterable<T> toElements(T element)) → Iterable<T>
Expands each element of this Iterable into zero or more elements.
inherited
firstWhere(bool test(T element), {T orElse()?}) → T
The first element that satisfies the given predicate test.
inherited
fold<T>(T initialValue, T combine(T previousValue, T element)) → T
Reduces a collection to a single value by iteratively combining each element of the collection with an existing value
inherited
followedBy(Iterable<T> other) → Iterable<T>
Creates the lazy concatenation of this iterable and other.
inherited
forEach(void action(T value)) → void
Invokes action on each element of this iterable in iteration order.
inherited
insert(int index, T value) → void
Inserts value at index.
join([String separator = ""]) → String
Converts each element to a String and concatenates the strings.
inherited
lastWhere(bool test(T element), {T orElse()?}) → T
The last element that satisfies the given predicate test.
inherited
map<T>(T toElement(T e)) → Iterable<T>
The current elements of this iterable modified by toElement.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
reduce(T combine(T value, T element)) → T
Reduces a collection to a single value by iteratively combining elements of the collection using the provided function.
inherited
remove(T value) → bool
Removes the first occurrence of value; true if there was one.
removeAt(int index) → T
Removes and returns the element at index.
singleWhere(bool test(T element), {T orElse()?}) → T
The single element that satisfies test.
inherited
skip(int count) → Iterable<T>
Creates an Iterable that provides all but the first count elements.
inherited
skipWhile(bool test(T element)) → Iterable<T>
Creates an Iterable that skips leading elements while test is satisfied.
inherited
sort([int compare(T a, T b)?]) → void
Sorts in place with an optional comparator.
take(int count) → Iterable<T>
Creates a lazy iterable of the count first elements of this iterable.
inherited
takeWhile(bool test(T element)) → Iterable<T>
Creates a lazy iterable of the leading elements satisfying test.
inherited
toJson() → Map<String, dynamic>
Serializes an object to a map representation.
override
toList({bool growable = true}) → List<T>
Creates a List containing the elements of this Iterable.
inherited
toSet() → Set<T>
Creates a Set containing the same elements as this iterable.
inherited
toString() → String
Returns a string representation of (some of) the elements of this.
inherited
where(bool test(T element)) → Iterable<T>
Creates a new lazy Iterable with all elements that satisfy the predicate test.
inherited
whereType<T>() → Iterable<R>
Creates a new lazy Iterable with all elements that have type T.
inherited

Operators

operator ==(Object other) → bool
Equal to another RpcList holding equal elements in the same order, as the other primitives compare by value.
override
operator [](int index) → T
The element at index.
operator []=(int index, T value) → void
Replaces the element at index.

Static Methods

fromJson<T extends IRpcSerializable>(T fromJson(Map<String, dynamic>)) → RpcList<T> Function(Map<String, dynamic>)
Returns a decoder function that builds an RpcList from JSON.
fromJsonRaw<T extends IRpcSerializable>(List json, T fromJson(Map<String, dynamic>)) → RpcList<T>
Creates a list from a JSON representation.