OLD | NEW |
1 Quiver | 1 Quiver |
2 ====== | 2 ====== |
3 | 3 |
4 Quiver is a set of utility libraries for Dart that makes using many Dart | 4 Quiver is a set of utility libraries for Dart that makes using many Dart |
5 libraries easier and more convenient, or adds additional functionality. | 5 libraries easier and more convenient, or adds additional functionality. |
6 | 6 |
7 [![Build Status](https://travis-ci.org/google/quiver-dart.svg?branch=master)](ht
tps://travis-ci.org/google/quiver-dart) | 7 [![Build Status](https://travis-ci.org/google/quiver-dart.svg?branch=master)](ht
tps://travis-ci.org/google/quiver-dart) |
8 [![Coverage Status](https://img.shields.io/coveralls/google/quiver-dart.svg)](ht
tps://coveralls.io/r/google/quiver-dart) | 8 [![Coverage Status](https://img.shields.io/coveralls/google/quiver-dart.svg)](ht
tps://coveralls.io/r/google/quiver-dart) |
9 | 9 |
10 ## Documentation | 10 ## Documentation |
11 | 11 |
12 [API Docs](http://www.dartdocs.org/documentation/quiver/latest) are available. | 12 [API Docs](http://www.dartdocs.org/documentation/quiver/latest) are available. |
13 | 13 |
14 ## Installation | 14 ## Installation |
15 | 15 |
16 Add Quiver to your project's pubspec.yaml file and run `pub get`. | 16 Add Quiver to your project's pubspec.yaml file and run `pub get`. |
17 We recommend the following version constraint: | 17 We recommend the following version constraint: |
18 | 18 |
19 dependencies: | 19 dependencies: |
20 quiver: '>=0.21.0<0.22.0' | 20 quiver: '>=0.25.0<0.26.0' |
21 | 21 |
22 # Main Libraries | 22 # Main Libraries |
23 | 23 |
24 ## [quiver.async][] | 24 ## [quiver.async][] |
25 | 25 |
26 Utilities for working with Futures, Streams and async computations. | 26 Utilities for working with Futures, Streams and async computations. |
27 | 27 |
| 28 `collect` collects the completion events of an `Iterable` of `Future`s into a |
| 29 `Stream`. |
| 30 |
| 31 `enumerate` and `concat` represent `Stream` versions of the same-named |
| 32 [quiver.iterables][] methods. |
| 33 |
| 34 `doWhileAsync`, `reduceAsync` and `forEachAsync` perform async computations on |
| 35 the elements of on Iterables, waiting for the computation to complete before |
| 36 processing the next element. |
| 37 |
| 38 `StreamBuffer` allows for the orderly reading of elements from a stream, such |
| 39 as a socket. |
| 40 |
28 `FutureGroup` is collection of Futures that signals when all its child futures | 41 `FutureGroup` is collection of Futures that signals when all its child futures |
29 have completed. Allows adding new Futures as long as it hasn't completed yet. | 42 have completed. Allows adding new Futures as long as it hasn't completed yet. |
30 Useful when async tasks can spwn new async tasks and you need to wait for all of | 43 Useful when async tasks can spwn new async tasks and you need to wait for all of |
31 them to complete. | 44 them to complete. |
32 | 45 |
33 `FutureStream` turns a `Future<Stream>` into a `Stream` which emits the same | 46 `FutureStream` turns a `Future<Stream>` into a `Stream` which emits the same |
34 events as the stream returned from the future. | 47 events as the stream returned from the future. |
35 | 48 |
36 `StreamRouter` splits a Stream into mulltiple streams based on a set of | 49 `StreamRouter` splits a Stream into mulltiple streams based on a set of |
37 predicates. | 50 predicates. |
38 | 51 |
39 `CountdownTimer` is a simple countdown timer that fires events in regular | 52 `CountdownTimer` is a simple countdown timer that fires events in regular |
40 increments. | 53 increments. |
41 | 54 |
42 `doWhileAsync`, `reduceAsync` and `forEachAsync` perform async computations on | |
43 the elements of on Iterables, waiting for the computation to complete before | |
44 processing the next element. | |
45 | |
46 `CreateTimer` and `CreateTimerPeriodic` are typedefs that are useful for | 55 `CreateTimer` and `CreateTimerPeriodic` are typedefs that are useful for |
47 passing Timer factories to classes and functions, increasing the testability of | 56 passing Timer factories to classes and functions, increasing the testability of |
48 code that depends on Timer. | 57 code that depends on Timer. |
49 | 58 |
50 `Metronome` is a self-correcting alternative to `Timer.periodic`. It provides | 59 `Metronome` is a self-correcting alternative to `Timer.periodic`. It provides |
51 a simple, tracking periodic stream of `DateTime` events with optional anchor | 60 a simple, tracking periodic stream of `DateTime` events with optional anchor |
52 time. | 61 time. |
53 | 62 |
54 [quiver.async]: http://www.dartdocs.org/documentation/quiver/latest#quiver/quive
r-async | 63 [quiver.async]: http://www.dartdocs.org/documentation/quiver/latest#quiver/quive
r-async |
55 | 64 |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
157 | 166 |
158 `matchesAny` combines multiple Patterns into one, and allows for exclusions. | 167 `matchesAny` combines multiple Patterns into one, and allows for exclusions. |
159 | 168 |
160 `matchesFull` returns true if a Pattern matches an entire String. | 169 `matchesFull` returns true if a Pattern matches an entire String. |
161 | 170 |
162 `escapeRegex` escapes special regex characters in a String so that it can be | 171 `escapeRegex` escapes special regex characters in a String so that it can be |
163 used as a literal match inside of a RegExp. | 172 used as a literal match inside of a RegExp. |
164 | 173 |
165 [quiver.pattern]: http://www.dartdocs.org/documentation/quiver/latest#quiver/qui
ver-pattern | 174 [quiver.pattern]: http://www.dartdocs.org/documentation/quiver/latest#quiver/qui
ver-pattern |
166 | 175 |
167 ## [quiver.streams][] | |
168 | |
169 `collect` collects the completion events of an `Iterable` of `Future`s into a | |
170 `Stream`. | |
171 | |
172 `enumerate` and `concat` represent `Stream` versions of the same-named | |
173 [quiver.iterables][] methods. | |
174 | |
175 `StreamBuffer` allows for the orderly reading of elements from a stream, such | |
176 as a socket. | |
177 | |
178 [quiver.streams]: http://www.dartdocs.org/documentation/quiver/latest#quiver/qui
ver-streams | |
179 | |
180 ## [quiver.strings][] | 176 ## [quiver.strings][] |
181 | 177 |
182 `isBlank` checks if a string is `null`, empty or made of whitespace characters. | 178 `isBlank` checks if a string is `null`, empty or made of whitespace characters. |
183 | 179 |
184 `isEmpty` checks if a string is `null` or empty. | 180 `isEmpty` checks if a string is `null` or empty. |
185 | 181 |
186 `equalsIgnoreCase` checks if two strings are equal, ignoring case. | 182 `equalsIgnoreCase` checks if two strings are equal, ignoring case. |
187 | 183 |
188 `compareIgnoreCase` compares two strings, ignoring case. | 184 `compareIgnoreCase` compares two strings, ignoring case. |
189 | 185 |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
255 `assertCheckedMode` asserts the current runtime has checked mode enabled. | 251 `assertCheckedMode` asserts the current runtime has checked mode enabled. |
256 | 252 |
257 [quiver.testing.runtime]: http://www.dartdocs.org/documentation/quiver/latest#qu
iver/quiver-testing-runtime | 253 [quiver.testing.runtime]: http://www.dartdocs.org/documentation/quiver/latest#qu
iver/quiver-testing-runtime |
258 | 254 |
259 ## [quiver.testing.time][] | 255 ## [quiver.testing.time][] |
260 | 256 |
261 `FakeStopwatch` is a Stopwatch that uses a provided `now()` function to get the | 257 `FakeStopwatch` is a Stopwatch that uses a provided `now()` function to get the |
262 current time. | 258 current time. |
263 | 259 |
264 [quiver.testing.time]: http://www.dartdocs.org/documentation/quiver/latest#quive
r/quiver-testing-time | 260 [quiver.testing.time]: http://www.dartdocs.org/documentation/quiver/latest#quive
r/quiver-testing-time |
OLD | NEW |