Configuration.fromArgResults constructor

Configuration.fromArgResults(
  1. ArgResults results
)

Implementation

factory Configuration.fromArgResults(ArgResults results) {
  final excludePrivateValues =
      results[excludePrivateOption] as Iterable<String>;
  final excludePrivateAll = excludePrivateValues.contains('all');
  final excludePrivateClasses =
      excludePrivateAll || excludePrivateValues.contains('class');
  final excludePrivateFields =
      excludePrivateAll || excludePrivateValues.contains('field');
  final excludePrivateMethods =
      excludePrivateAll || excludePrivateValues.contains('method');

  final excludeHasA = results[excludeHasAOption];
  final excludeIsA = results[excludeIsAOption];

  final excludeExpressions =
      (results[excludeOption] as Iterable<String>).map((s) => RegExp(s));
  final includeExpressions =
      (results[includeOption] as Iterable<String>).map((s) => RegExp(s));

  final hasAExpressions =
      (results[hasAOption] as Iterable<String>).map((s) => RegExp(s));
  final isAExpressions =
      (results[isAOption] as Iterable<String>).map((s) => RegExp(s));

  final builderName = results[builderOption];
  final builder = getBuilder(builderName);

  return ConfigurationImpl(
    builder: builder,
    builderName: builderName,
    excludeExpressions: excludeExpressions,
    excludeHasA: excludeHasA,
    excludeIsA: excludeIsA,
    excludePrivateClasses: excludePrivateClasses,
    excludePrivateFields: excludePrivateFields,
    excludePrivateMethods: excludePrivateMethods,
    exportedOnly: results[exportedOnlyOption]!,
    hasAExpressions: hasAExpressions,
    includeExpressions: includeExpressions,
    isAExpressions: isAExpressions,
    outputPath: results[outputPathOption]!,
    packagePath: results[packagePathOption]!,
    searchPath: results[searchPathOption]!,
    shouldShowHelp: results[helpOption]!,
    shouldShowVersion: results[versionOption]!,
    verbose: results[verboseOption]!,
  );
}