Drop Pair util class (dart-lang/yaml#169)

diff --git a/pkgs/yaml/lib/src/parser.dart b/pkgs/yaml/lib/src/parser.dart
index ddbfd4e..e924e40 100644
--- a/pkgs/yaml/lib/src/parser.dart
+++ b/pkgs/yaml/lib/src/parser.dart
@@ -174,9 +174,7 @@
 
     // Parse an explicit document.
     var start = token.span;
-    var pair = _processDirectives();
-    var versionDirective = pair.first;
-    var tagDirectives = pair.last;
+    var (versionDirective, tagDirectives) = _processDirectives();
     token = _scanner.peek()!;
     if (token.type != TokenType.documentStart) {
       throw YamlException('Expected document start.', token.span);
@@ -667,7 +665,7 @@
       ScalarEvent(location.pointSpan() as FileSpan, '', ScalarStyle.PLAIN);
 
   /// Parses directives.
-  Pair<VersionDirective?, List<TagDirective>> _processDirectives() {
+  (VersionDirective?, List<TagDirective>) _processDirectives() {
     var token = _scanner.peek()!;
 
     VersionDirective? versionDirective;
@@ -707,7 +705,7 @@
         TagDirective('!!', 'tag:yaml.org,2002:'), token.span.start.pointSpan(),
         allowDuplicates: true);
 
-    return Pair(versionDirective, tagDirectives);
+    return (versionDirective, tagDirectives);
   }
 
   /// Adds a tag directive to the directives stack.
diff --git a/pkgs/yaml/lib/src/scanner.dart b/pkgs/yaml/lib/src/scanner.dart
index 4b155e1..1cfd3af 100644
--- a/pkgs/yaml/lib/src/scanner.dart
+++ b/pkgs/yaml/lib/src/scanner.dart
@@ -1142,8 +1142,8 @@
     // Scan the leading line breaks to determine the indentation level if
     // needed.
     var pair = _scanBlockScalarBreaks(indent);
-    indent = pair.first;
-    var trailingBreaks = pair.last;
+    indent = pair.indent;
+    var trailingBreaks = pair.trailingBreaks;
 
     // Scan the block scalar contents.
     var buffer = StringBuffer();
@@ -1194,8 +1194,8 @@
 
       // Eat the following indentation and spaces.
       var pair = _scanBlockScalarBreaks(indent);
-      indent = pair.first;
-      trailingBreaks = pair.last;
+      indent = pair.indent;
+      trailingBreaks = pair.trailingBreaks;
     }
 
     // Chomp the tail.
@@ -1210,7 +1210,7 @@
   ///
   /// Determines the intendation level if needed. Returns the new indentation
   /// level and the text of the line breaks.
-  Pair<int, String> _scanBlockScalarBreaks(int indent) {
+  ({int indent, String trailingBreaks}) _scanBlockScalarBreaks(int indent) {
     var maxIndent = 0;
     var breaks = StringBuffer();
 
@@ -1238,7 +1238,7 @@
       // be supported by the spec.
     }
 
-    return Pair(indent, breaks.toString());
+    return (indent: indent, trailingBreaks: breaks.toString());
   }
 
   // Scans a quoted scalar.
diff --git a/pkgs/yaml/lib/src/utils.dart b/pkgs/yaml/lib/src/utils.dart
index d9e20d1..0dc132f 100644
--- a/pkgs/yaml/lib/src/utils.dart
+++ b/pkgs/yaml/lib/src/utils.dart
@@ -7,17 +7,6 @@
 
 import 'package:source_span/source_span.dart';
 
-/// A pair of values.
-class Pair<E, F> {
-  final E first;
-  final F last;
-
-  Pair(this.first, this.last);
-
-  @override
-  String toString() => '($first, $last)';
-}
-
 /// Print a warning.
 ///
 /// If [span] is passed, associates the warning with that span.