extractCls function

JSONString extractCls(
  1. String codePath
)

Extracts the source code of the first class declaration found in the given Dart file.

Implementation

JSONString extractCls(String codePath) {
  final file = File(codePath);
  if (!file.existsSync()) {
    return '';
  }

  final content = file.readAsStringSync();
  final result = parseString(
    content: content,
    featureSet: FeatureSet.latestLanguageVersion(),
    throwIfDiagnostics: false,
  );

  final unit = result.unit;
  final visitor = _ClassVisitor();
  unit.accept(visitor);

  final source = visitor.classSource ?? '';
  // print(source);
  return source;
}