findAnalysisOptions method

AnalysisOptions? findAnalysisOptions(
  1. File? file
)

Implementation

AnalysisOptions? findAnalysisOptions(File? file) {
  if (file == null) {
    return null;
  }
  var dir = file.parent;
  while (!dir.isRoot) {
    try {
      final optionsFile = dir.getChildAssumingFile('analysis_options.yaml');
      if (optionsFile.exists) {
        final x = _analysisOptions[optionsFile.path];
        if (x != null) {
          return x;
        }
        _logger.finer('parsing ${optionsFile.path}');
        final ret =
            AnalysisOptions.loadFromYaml(dir, optionsFile.readAsStringSync());
        _analysisOptions[optionsFile.path] = ret;
        return ret;
      }
      dir = dir.parent;
    } catch (e) {
      break;
    }
  }
  return null;
}