generate method
Generates Dart code for an input Dart library.
May create additional outputs through the buildStep
, but the 'primary'
output is Dart code returned through the Future. If there is nothing to
generate for this library may return null, or a Future that resolves to
null or the empty string.
Implementation
@override
Future<String> generate(LibraryReader library, BuildStep buildStep) async {
final result = StringBuffer();
for (final element in library.allElements) {
final annotations =
const TypeChecker.fromRuntime(GenerateGherkinResources)
.annotationsOf(element);
if (annotations.isNotEmpty) {
result.writeln(await build(element, annotations));
}
}
return result.toString();
}