Clone this repo:
  1. 07d5d7d Bump dart-lang/setup-dart from 1.6.5 to 1.7.0 (#63) by dependabot[bot] · 7 weeks ago master
  2. f07a650 Bump actions/checkout from 4.2.0 to 4.2.2 (#62) by dependabot[bot] · 3 months ago
  3. ef2e7e2 Bump actions/checkout from 4.1.6 to 4.2.0 (#61) by dependabot[bot] · 4 months ago
  4. 29736f2 Bump dart-lang/setup-dart from 1.6.4 to 1.6.5 (#60) by dependabot[bot] · 7 months ago
  5. 7d7c741 Bump actions/checkout from 4.1.4 to 4.1.6 (#58) by dependabot[bot] · 8 months ago

Dart Pub package publisher

A library providing a tuple data structure.

Status - complete

We consider this package to be feature complete. With Dart 3.0, users now have the ability to use Records:

Records are an anonymous, immutable, aggregate type. Like other collection types, they let you bundle multiple objects into a single object.

  var record = (123, true);
  print('${record.$1}: ${record.$2}');

By and large, Records serve the same use cases that package:tuple had been used for. New users coming to this package should likely look at using Dart Records instead. Existing uses of package:tuple will continue to work, however we don't intend to enhance the functionality of this package; we will continue to maintain this package from the POV of bug fixes.

Usage example

const t = Tuple2<String, int>('a', 10);

print(t.item1); // prints 'a'
print(t.item2); // prints '10'
const t1 = Tuple2<String, int>('a', 10);
final t2 = t1.withItem1('c');
// t2 is a new [Tuple2] object with item1 is 'c' and item2 is 10.