forEachDartProject static method

Future<ProcessingResult> forEachDartProject(
  1. Future<bool> run(
    1. CommandContext ctx
    ), {
  2. String scan = '.',
  3. bool recursive = true,
  4. List<String>? include,
  5. List<String>? exclude,
})

Convenience method to iterate over all Dart projects.

Implementation

static Future<ProcessingResult> forEachDartProject(
  Future<bool> Function(CommandContext ctx) run, {
  String scan = '.',
  bool recursive = true,
  List<String>? include,
  List<String>? exclude,
}) async {
  final info = ProjectTraversalInfo(
    scan: scan,
    recursive: recursive,
    executionRoot: Directory.current.path,
    projectPatterns: include ?? [],
    excludeProjects: exclude ?? [],
  );

  return traverse(
    info: info,
    worksWithNatures: {DartProjectFolder},
    run: run,
  );
}