anchor.diff:    ArgParser parser = createArgParser();
     ArgResults result = parser.parse(args);
   
  -  var stopwatch = Stopwatch()..start();
     if (!validArguments(parser, result)) {
       return io.exit(1);
     }
  -  var code = await CompletionMetricsComputer(result.rest[0])
  -      .compute(corpus: result['corpus'], verbose: result['verbose']);
  +  var root = result.rest[0];
  +  print('Analyzing root: "$root"');
  +  var stopwatch = Stopwatch()..start();
  +  var code = await CompletionMetricsComputer(root, verbose: result['verbose'])
  +      .compute();
     stopwatch.stop();
   
     var duration = Duration(milliseconds: stopwatch.elapsedMilliseconds);
  
positive.code:     }
      return Place.none();
    }
  
    static List<String> _computeRootPaths(String rootPath, bool corpus) {
      var roots = <String>[];
      if (!corpus) {
        roots.add(rootPath);
      } else {
        for (var child in io.Directory(rootPath).listSync()) {
          if (child is io.Directory) {
            roots.add(path.join(rootPath, child.path));
          }
        }
      }
      return roots;
    }
  }
  
negative.code:       metrics.completionElementKindCounter
            .count(expectedCompletion.elementKind.toString());
  
        if (verbose) {
          // The format "/file/path/foo.dart:3:4" makes for easier input
          // with the Files dialog in IntelliJ.
          var lineNumber = expectedCompletion.lineNumber;
  