GpcListBased<T extends GpsPoint> class

A collection that internally stores the points in a basic list.

This is easy to follow and understand, but consumes a lot of memory compared to more efficient implementations, due to the overhead of the objects and the use of doubles.

Inheritance
Available Extensions

Constructors

GpcListBased()

Properties

first → T
The first element.
no setterinherited
hashCode int
The hash code for this object.
no setterinherited
isEmpty bool
Whether this collection has no elements.
no setterinherited
isNotEmpty bool
Whether this collection has at least one element.
no setterinherited
isReadonly bool
Collections are typically not read-only.
no setterinherited
iterator → RandomAccessIterator<T>
A new Iterator that allows iterating the elements of this Iterable.
no setterinherited
last → T
The last element.
no setterinherited
length int
The number of elements in this.
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
sortedByTime bool
Indicates whether the contents are sorted in increasing order of time value. If this is the case, time-based queries can be faster by performing a binary search. For every point in time only one entity is allowed to provide a location value, i.e. a list is not sorted if it contains two identical elements consecutively.
no setterinherited
sortingEnforcement SortingEnforcement
Whether the list is will disallow modifications that render it in a state that's not sorted by time. Setting this property to true while the collection is in an unsorted state will raise an exception.
getter/setter pairinherited

Methods

add(T element) bool
Add a single element to the collection.
inherited
add_Unsafe(T element) → void
Internal implementation of add, which does not do any safety checks regarding sorting. Only to be overridden in children.
override
addAll(Iterable<T> source) → void
inherited
addAllStartingAt(Iterable<T> source, [int skipItems = 0, int? nrItems]) → void
Add all elements from source to this, after skipping skipItems items from the source. skipItems=0 is equivalent to calling addAll.
inherited
addAllStartingAt_Unsafe(Iterable<T> source, [int skipItems = 0, int? nrItems]) → void
Internal implementation of addAllStartingAt, which does not do any safety checks regarding sorting. Only to be overridden in children.
override
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
checkContentsSortedByTime([int skipItems = 0, int? nrItems]) bool
Checks whether the contents are sorted by increasing time in cases where the list is not marked as sortedByTime.
inherited
compareElementTime(int elementNrA, int elementNrB) TimeComparisonResult
Performs compareTime for the elements in the positions elementNrA and elementNrB, then returns the result.
inherited
compareElementTimeWithSeparateItem(int elementNrA, T elementB) TimeComparisonResult
Performs compareTime for the item in the positions elementNrA and some separate elementB that's presumably not in the list, then returns the result.
inherited
compareElementTimeWithSeparateTime(int elementNrA, GpsTime timeB) TimeComparisonResult
Performs compareTime for the item in the positions elementNrA and some separate timeB that's presumably not in the list, then returns the result.
inherited
contains(Object? element) bool
Whether the collection contains an element equal to element.
inherited
diffElementTimeAndSeparateTime(int elementNrA, GpsTime timeB) int
Calculate the difference in time between the item in the position elementNrA and the timeB. See diffTime for explanations on how the difference is calculated and when it is positive, negative or zero.
inherited
elementAt(int index) → T
Returns the indexth element.
inherited
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 element)) → void
Invokes action on each element of this iterable in iteration order.
inherited
getSubSource(Iterable<T> source, int skipItems, int? nrItems) Iterable<T>
Returns a subset iterable from source that skips skipItems and copies up to nrItems (if specified) or the entire list (if not specified).
inherited
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
newEmpty({int? capacity}) GpcListBased<T>
Creates a collection of the same type as this, optionally with a starting capacity for children that support that.
override
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
rollbackAddingLastItem() → dynamic
Removes the last object in this list, but only intended for use during add and similar calls. The list is in general not supposed to have insert/remove operations available as explained in the documentation of the list itself.
override
singleWhere(bool test(T element), {T orElse()?}) → T
The single element that satisfies test.
inherited
skip(int count) → RandomAccessIterable<T>
Creates an Iterable that provides all but the first count elements.
inherited
skipWhile(bool test(T value)) Iterable<T>
Creates an Iterable that skips leading elements while test is satisfied.
inherited
sublist(int start, [int? end]) GpsPointsCollection<T>
Returns a new collection of the same type as the current collection containing the elements between start and end.
inherited
take(int count) → RandomAccessIterable<T>
Creates a lazy iterable of the count first elements of this iterable.
inherited
takeWhile(bool test(T value)) Iterable<T>
Creates a lazy iterable of the leading elements satisfying test.
inherited
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<T>
Creates a new lazy Iterable with all elements that have type T.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited
operator [](int index) → T