_common
library
Classes
BaseModel
BoolList
A space-efficient list of boolean values.
CanonicalizedMap <C , K , V >
A map whose keys are converted to canonical values of type C
.
CaseInsensitiveEquality
String equality that's insensitive to differences in ASCII case.
CombinedIterableView <T >
A view of several iterables combined sequentially into a single iterable.
CombinedListView <T >
A view of several lists combined into a single list.
CombinedMapView <K , V >
Returns a new map that represents maps flattened into a single map.
CompleterOr <T >
A utility for producing and completing FutureOr objects.
ConvertStringToDuration
A tool to convert a string to a Duration .
DataRefModel
Generated class for _DataRefModel
.
DataRefModelFieldNames
DateTimeUtils
DeepCollectionEquality
Deep equality on collections.
DefaultEquality <E >
Equality of objects that compares only the natural equality of the objects.
DelegatingIterable <E >
An Iterable that delegates all operations to a base iterable.
DelegatingList <E >
A List that delegates all operations to a base list.
DelegatingMap <K , V >
A Map that delegates all operations to a base map.
DelegatingQueue <E >
A Queue that delegates all operations to a base queue.
DelegatingSet <E >
A Set that delegates all operations to a base set.
Equality <E >
A generic equality relation on objects.
EqualityBy <E , F >
Equality of objects based on derived values.
EqualityMap <K , V >
A Map whose key equality is determined by an Equality object.
EqualitySet <E >
A Set whose key equality is determined by an Equality object.
ExecutionQueue
A queue for sequentially executing functions one at a time.
FieldModel
Generated class for _FieldModel
.
FieldModelFieldNames
FieldUtils
FutureOrController <T >
A controller for managing FutureOr operations and capturing exceptions.
GenerateDartModel
Generated class for _GenerateDartModel
.
GenerateDartModelFieldNames
HeapPriorityQueue <E >
Heap based priority queue.
IdentityEquality <E >
Equality of objects that compares only the identity of the objects.
IterableEquality <E >
Equality on iterables.
IterableZip <T >
Iterable that iterates over lists of values from other iterables.
ListEquality <E >
Equality on lists.
ListSlice <E >
A list view of a range of another list.
MapEquality <K , V >
Equality on maps.
MapKeySet <E >
An unmodifiable Set view of the keys of a Map .
MapValueSet <K , V >
Creates a modifiable Set view of the values of a Map .
Model
MultiEquality <E >
Combines several equalities into a single equality.
NonGrowableListMixin <E >
Mixin class that implements a throwing version of all list operations that
change the List's length.
NonGrowableListView <E >
A fixed-length list.
PriorityQueue <E >
A priority queue is a priority based work-list of elements.
QueueList <E >
A class that efficiently implements both Queue and List .
ReferencedModel
Generated class for _ReferencedModel
.
ReferencedModelFieldNames
Sequential
A queue that manages the execution of functions sequentially, allowing for
optional throttling.
SetEquality <E >
Equality of sets.
StreamUtils
ThisModel <T extends BaseModel >
A class that extends BaseModel and provides a reference to itself.
UnionSet <E >
A single set that provides a view of the union over a set of sets.
UnionSetController <E >
A controller that exposes a view of the union of a collection of sets.
UnmodifiableListView <E >
An unmodifiable List view of another List.
UnmodifiableMapMixin <K , V >
Mixin class that implements a throwing version of all map operations that
change the Map.
UnmodifiableMapView <K , V >
View of a Map that disallow modifying the map.
UnmodifiableSetMixin <E >
Mixin class that implements a throwing version of all set operations that
change the Set.
UnmodifiableSetView <E >
An unmodifiable set.
UnorderedIterableEquality <E >
Equality of the elements of two iterables without considering order.
Extensions
ChunkedOnIterableExtension
on Iterable <T >
ComparatorExtension
on Comparator <T >
Extensions on comparator functions.
ConvertOnStringCaseTypeExtension
on StringCaseType
DataRefModelExtension
on DataRefModel
FutureOrExtension
on FutureOr <T >
GenericTypeOnIterableExtension
on Iterable <T >
GenericTypeOnMapExtension
on Map <K , V >
IterableComparableExtension
on Iterable <T >
Extensions that apply to iterables of Comparable elements.
IterableDoubleExtension
on Iterable <double >
Extension on iterables of double.
IterableExtension
on Iterable <T >
Extensions that apply to all iterables.
IterableIntegerExtension
on Iterable <int >
Extension on iterables of integers.
IterableIterableExtension
on Iterable <Iterable <T > >
Extensions on iterables whose elements are also iterables.
IterableNullableExtension
on Iterable <T? >
Extensions that apply to iterables with a nullable element type.
IterableNumberExtension
on Iterable <num >
Extensions that apply to iterables of numbers.
JoinWithLastSeparatorOnIterableExtension
on Iterable
ListComparableExtensions
on List <E >
Various extensions on lists of comparable elements.
ListExtensions
on List <E >
Various extensions on lists of arbitrary elements.
MapKeysAndValyesOnMapExtension
on Map <K1 , V1 >
MapWithDefaultOnMapExtension
on Map <K , V >
MaybeAddToIterableExtension
on Iterable <T >
MaybeAddToListExtension
on List <T >
MaybeAddToMapExtension
on Map <T1 , T2 >
MaybeAddToSetExtension
on Set <T >
MiscUtilsOnStringExtension
on String
NonNullKeysOnMapExtension
on Map <K? , V >
NonNullsOnMapExtension
on Map <K? , V? >
NonNullValuesOnMapExtension
on Map <K , V? >
NullIfEmptyOnIterableExtension
on Iterable <T >
NullIfEmptyOnListExtension
on List <T >
NullIfEmptyOnMapExtension
on Map <T1 , T2 >
NullIfEmptyOnQueueExtension
on Queue <T >
NullIfEmptyOnSetExtension
on Set <T >
NullIfEmptyOnStringX
on String
SecondToNinthElementOnIterableExtension
on Iterable <T >
SetNestedValueOnMapExtension
on Map
StringCaseConversionsOnStringExtension
on String
TakeLastOnIterableExtension
on Iterable <String >
ToClassOnTFieldRecordExtension
on TFieldRecord
ToMapOnIterableExtension
on Iterable <MapEntry <K , V > >
ToTrimmedOrNullOnObjectExtension
on Object
TraverseMapOnMapExtension
on Map <K , V >
TryMergeOnIterableExtension
on Iterable <Iterable <T > ? >
TryOrNullOnFunctionExtension
on Function
TryReduceOnIterableExtension
on Iterable <T >
UniqueOnMapEntryIterableExtension
on Iterable <MapEntry <K , V > >
ValueOfOnEnumExtension
on Iterable <T >
Properties
letAs
→ T? Function<T >(dynamic input )
final
letBool
→ bool ? Function(dynamic input )
final
letDouble
→ double ? Function(dynamic input )
final
letInt
→ int ? Function(dynamic input )
final
letList
→ List <T > ? Function<T >(dynamic input , {bool filterNulls = false , T? nullFallback })
final
letMap
→ Map <K , V > ? Function<K , V >(dynamic input , {bool filterNulls = false , dynamic nullFallback })
final
letSet
→ Set <T > ? Function<T >(dynamic input , {bool filterNulls = false , T? nullFallback })
final
mapSyncOrAsync
→ FutureOr <R > Function<A , R >(FutureOr <A > a , FutureOr <R > callback (A a ), {void onError (Object e )? })
final
Functions
binarySearch <E > (List <E > sortedList , E value , {int compare (E , E )? })
→ int
Returns a position of the value
in sortedList
, if it is there.
castAsOrNull <T > (dynamic input )
→ T?
Similar to letAsOrNull , but uses a try-catch block internally.
combinedOrderedStringId (List <String > ids )
→ String
Generates an ordered ID from a list of unordered IDs, that can be
used to identify the list of IDs.
compareAsciiLowerCase (String a , String b )
→ int
Compares a
and b
lexically, converting ASCII letters to lower case.
compareAsciiLowerCaseNatural (String a , String b )
→ int
Compares strings a
and b
according to lower-case
natural sort ordering .
compareAsciiUpperCase (String a , String b )
→ int
Compares a
and b
lexically, converting ASCII letters to upper case.
compareAsciiUpperCaseNatural (String a , String b )
→ int
Compares strings a
and b
according to upper-case
natural sort ordering .
compareNatural (String a , String b )
→ int
Compares strings a
and b
according to natural sort ordering .
consec <A , R > (FutureOr <A > a , FutureOr <R > callback (A a ), {void onError (Object e )? })
→ FutureOr <R >
Maps a synchronous or asynchronous value to a single value.
consec2 <A , B , R > (FutureOr <A > a , FutureOr <B > b , FutureOr <R > callback (A a , B b ), {void onError (Object e )? })
→ FutureOr <R >
Maps two synchronous or asynchronous values to a single value.
consec3 <A , B , C , R > (FutureOr <A > a , FutureOr <B > b , FutureOr <C > c , FutureOr <R > callback (A a , B b , C c ), {void onError (Object e )? })
→ FutureOr <R >
Maps three synchronous or asynchronous values to a single value.
consec4 <A , B , C , D , R > (FutureOr <A > a , FutureOr <B > b , FutureOr <C > c , FutureOr <D > d , FutureOr <R > callback (A a , B b , C c , D d ), {void onError (Object e )? })
→ FutureOr <R >
Maps four synchronous or asynchronous values to a single value.
consec5 <A , B , C , D , E , R > (FutureOr <A > a , FutureOr <B > b , FutureOr <C > c , FutureOr <D > d , FutureOr <E > e , FutureOr <R > callback (A a , B b , C c , D d , E e ), {void onError (Object e )? })
→ FutureOr <R >
Maps five synchronous or asynchronous values to a single value.
consec6 <A , B , C , D , E , F , R > (FutureOr <A > a , FutureOr <B > b , FutureOr <C > c , FutureOr <D > d , FutureOr <E > e , FutureOr <F > f , FutureOr <R > callback (A a , B b , C c , D d , E e , F f ), {void onError (Object e )? })
→ FutureOr <R >
Maps six synchronous or asynchronous values to a single value.
consec7 <A , B , C , D , E , F , G , R > (FutureOr <A > a , FutureOr <B > b , FutureOr <C > c , FutureOr <D > d , FutureOr <E > e , FutureOr <F > f , FutureOr <G > g , FutureOr <R > callback (A a , B b , C c , D d , E e , F f , G g ), {void onError (Object e )? })
→ FutureOr <R >
Maps seven synchronous or asynchronous values to a single value.
consec8 <A , B , C , D , E , F , G , H , R > (FutureOr <A > a , FutureOr <B > b , FutureOr <C > c , FutureOr <D > d , FutureOr <E > e , FutureOr <F > f , FutureOr <G > g , FutureOr <H > h , FutureOr <R > callback (A a , B b , C c , D d , E e , F f , G g , H h ), {void onError (Object e )? })
→ FutureOr <R >
Maps eight synchronous or asynchronous values to a single value.
consec9 <A , B , C , D , E , F , G , H , I , R > (FutureOr <A > a , FutureOr <B > b , FutureOr <C > c , FutureOr <D > d , FutureOr <E > e , FutureOr <F > f , FutureOr <G > g , FutureOr <H > h , FutureOr <I > i , FutureOr <R > callback (A a , B b , C c , D d , E e , F f , G g , H h , I i ), {void onError (Object e )? })
→ FutureOr <R >
Maps nine synchronous or asynchronous values to a single value.
consecList <R > (List <FutureOr > items , FutureOr <R > callback (List resolvedItems ), {void onError (Object e )? })
→ FutureOr <R >
Maps a synchronous or asynchronous list of values to a single value.
convertToStringCaseType (String value , StringCaseType ? stringCaseType )
→ String
Converts a string to a specific case type.
csvToMap (String input )
→ Map <int , List <String > >
Converts a CSV string to a map.
dataRefFromString (String ? input )
→ DataRefModel ?
Creates a DataRefModel from a given path string. If the path ends with a
'/', it represents a collection path, otherwise, it represents a document
path.
equalsIgnoreAsciiCase (String a , String b )
→ bool
Checks if strings a
and b
differ only on the case of ASCII letters.
expandFlattenedJson (Map <String , dynamic > input , {String separator = '.' })
→ Map <String , dynamic >
Expands a flattened JSON map, e.g. {'a.b': 1}
to {a.b: 1, b: 1}
.
expandJson (Map <String , dynamic > input , {String separator = '.' })
→ Map <String , dynamic >
Expands a Json map, e.g. {'a': {'b': 1}}
to {a.b: 1, b: 1}
.
flattenJson (Map <String , dynamic > input , {String separator = '.' })
→ Map <String , dynamic >
Flattens a nested JSON object into a single-level map with string keys.
getSetDifference <T > (Set <T > before , Set <T > after )
→ Set <T >
Returns the difference between two sets.
groupBy <S , T > (Iterable <S > values , T key (S ) )
→ Map <T , List <S > >
Groups the elements in values
by the value returned by key
.
hashIgnoreAsciiCase (String string )
→ int
Hash code for a string which is compatible with equalsIgnoreAsciiCase .
insertionSort <E > (List <E > elements , {int compare (E , E )?, int start = 0 , int ? end })
→ void
Sort a list between start
(inclusive) and end
(exclusive) using
insertion sort.
isEquatable <T > ()
→ bool
Checks if T is any of the following types, which are directly comparable
using the ==
operator and are passed by value:
isNullable <T > ()
→ bool
Returns true if T
is nullable.
isSubtype <TChild , TParent > ()
→ bool
Returns true if A is a subtype of B.
jsonDecode (String source , {Object ? reviver (Object ? key , Object ? value )? })
→ dynamic
Parses the string and returns the resulting Json object.
jsonEncode (Object ? object , {Object ? toEncodable (Object ? nonEncodable )? })
→ String
Converts object
to a JSON string.
lastBy <S , T > (Iterable <S > values , T key (S ) )
→ Map <T , S >
Associates the elements in values
by the value returned by key
.
letAsOrNull <T > (dynamic input )
→ T?
Let's you cast input
to a T
type if possible, or returns null
if the
cast cannot be performed.
letBoolOrNull (dynamic input )
→ bool ?
Let's you convert input
to a bool type if possible, or returns null
if
the conversion cannot be performed.
letDateTimeOrNull (dynamic input )
→ DateTime ?
Let's you convert input
to a DateTime type if possible, or returns null
if the conversion cannot be performed.
letDoubleOrNull (dynamic input )
→ double ?
Let's you convert input
to a double type if possible, or returns null
if
the conversion cannot be performed.
letIntOrNull (dynamic input )
→ int ?
Let's you convert input
to an int type if possible, or returns null
if
the conversion cannot be performed.
letIterableFromCsv (String input )
→ Iterable <String >
Let's you convert input
to an Iterable of Strings if possible, or returns
null
if the conversion cannot be performed.
letIterableOrNull <T > (dynamic input , {bool filterNulls = false , dynamic nullFallback })
→ Iterable <T > ?
Let's you convert input
to an Iterable type if possible, or returns null
if the conversion cannot be performed.
letListOrNull <T > (dynamic input , {bool filterNulls = false , T? nullFallback })
→ List <T > ?
Let's you convert input
to a List type if possible, or returns null
if
the conversion cannot be performed.
letMapOrNull <K , V > (dynamic input , {bool filterNulls = false , dynamic nullFallback })
→ Map <K , V > ?
Let's you convert input
to a Map type if possible, or returns null
if
the conversion cannot be performed.
letNumOrNull (dynamic input )
→ num ?
Let's you convert input
to a num type if possible, or returns null
if
the conversion cannot be performed.
letOrNull <T > (dynamic input )
→ T?
Let's you convert input
to a T
type if possible, or returns null
if
the conversion cannot be performed.
letSetOrNull <T > (dynamic input , {bool filterNulls = false , T? nullFallback })
→ Set <T > ?
Let's you convert input
to a Set type if possible, or returns null
if
the conversion cannot be performed.
letUriOrNull (dynamic input )
→ Uri ?
Let's you convert input
to a Uri type if possible, or returns null
if
the conversion cannot be performed.
lowerBound <E > (List <E > sortedList , E value , {int compare (E , E )? })
→ int
Returns the first position in sortedList
that does not compare less than
value
.
mapMap <K1 , V1 , K2 , V2 > (Map <K1 , V1 > map , {K2 key (K1 , V1 )?, V2 value (K1 , V1 )? })
→ Map <K2 , V2 >
Creates a new map from map
with new keys and values.
mapToCsv (Map input )
→ String
Converts a map to a CSV string.
mapToJson <T1 , T2 > (Map <T1 , T2 > input , {Set <Type > typesAllowed = const {} , String ? keyConverter (dynamic )? })
→ Map <String , dynamic >
Converts a map to a Json map by recursively converting its keys and values
to Json compatible types.
maxBy <S , T > (Iterable <S > values , T orderBy (S ), {int compare (T , T )? })
→ S?
Returns the element of values
for which orderBy
returns the maximum
value.
maybeAddToIterable <T > (Iterable <T > ? source , Iterable <T > ? add )
→ Iterable <T > ?
Adds add
to source
if both are not null.
maybeAddToList <T > (List <T > ? source , List <T > ? add )
→ List <T > ?
Adds add
to source
if both are not null.
maybeAddToMap <T1 , T2 > (Map <T1 , T2 > ? source , Map <T1 , T2 > ? add )
→ Map <T1 , T2 > ?
Adds add
to source
if both are not null.
maybeAddToSet <T > (Set <T > ? source , Set <T > ? add )
→ Set <T > ?
Adds add
to source
if both are not null.
mergeDataDeep (dynamic a , dynamic b , [dynamic elseFilter (dynamic )? ])
→ dynamic
Merges two data structures deeply.
mergeDataDeepIncludeCallsToJson (dynamic a , dynamic b )
→ dynamic
Merges two data structures deeply and tries to perform toJson on objects.
mergeDataDeepIncludeCallsToMap (dynamic a , dynamic b )
→ dynamic
Merges two data structures deeply and tries to perform toMap on objects.
mergeIterables (dynamic a , dynamic b )
→ Iterable
Merges two iterables into one iterable.
mergeListsSetsOrQueues (Iterable a , Iterable b )
→ Iterable
Merges two Iterables into one. Supported Iterable types are List, Set, and
Queue.
mergeMaps <K , V > (Map <K , V > map1 , Map <K , V > map2 , {V value (V , V )? })
→ Map <K , V >
Returns a new map with all key/value pairs in both map1
and map2
.
mergeMapsDeep <K , V > (List <Map <K , V > > maps )
→ Map <K , V >
Merges all maps
deeply.
mergeSort <E > (List <E > elements , {int start = 0 , int ? end , int compare (E , E )? })
→ void
Sorts a list between start
(inclusive) and end
(exclusive) using the
merge sort algorithm.
minBy <S , T > (Iterable <S > values , T orderBy (S ), {int compare (T , T )? })
→ S?
Returns the element of values
for which orderBy
returns the minimum
value.
nullFilteredList <T > (Iterable input )
→ List <T >
Converts input
to a List with non-null elements if T
is non-null.
nullFilteredMap <K , V > (Map input )
→ Map <K , V >
Converts input
to a Map with non-null keys and values if K
and V
are
non-null.
nullFilteredSet <T > (Iterable input )
→ Set <T >
Converts input
to a Set with non-null elements if T
is non-null.
nullIfEmpty <T > (T value )
→ T?
Returns null if value
is empty, otherwise returns value
.
reverse <E > (List <E > elements , [int start = 0 , int ? end ])
→ void
Reverses a list, or a part of a list, in-place.
shuffle (List elements , [int start = 0 , int ? end , Random ? random ])
→ void
Shuffles a list randomly.
stronglyConnectedComponents <T > (Map <T , Iterable <T > > graph )
→ List <Set <T > >
Returns the strongly connected components of graph
, in topological
order.
transitiveClosure <T > (Map <T , Iterable <T > > graph )
→ Map <T , Set <T > >
Returns the transitive closure of graph
.
traverseMap (Map map , Iterable keys , {dynamic newValue })
→ dynamic
Traverses a Map using a list of keys. If the keys do not exist, they are
created. If newValue
is provided, the value at the end of the traversal is
set to newValue
.
trimmedOrNull (Object ? input )
→ String ?
Converts the input to a string if it's not null and trims it or returns
null
if the result is empty.
tryToJson (dynamic object )
→ dynamic
Tries to convert an object to a json map by calling its toJson method if it
exists.
tryToMap (dynamic object )
→ dynamic
Tries to convert an object to a map by calling its toMap method if it exists.
typeEquality <T1 , T2 > ()
→ bool
Returns true if T1
and T2
are the same type.
uniqueEntries <K , V > (Iterable <MapEntry <K , V > > entries )
→ List <MapEntry <K , V > >
uniqueKeys <K , V > (Iterable <MapEntry <K , V > > entries )
→ List <MapEntry <K , V > >
uniqueValues <K , V > (Iterable <MapEntry <K , V > > entries )
→ List <MapEntry <K , V > >