generateJniBindings function
Implementation
Future<void> generateJniBindings(Config config) async {
setLoggingLevel(config.logLevel);
await buildSummarizerIfNotExists();
final Classes classes;
try {
classes = await getSummary(config);
} on SummaryParseException catch (e) {
if (e.stderr != null) {
printError(e.stderr);
}
log.fatal(e.message);
}
classes.accept(Excluder(config));
classes.accept(KotlinProcessor());
await classes.accept(Linker(config));
classes.accept(const Unnester());
classes.accept(const Descriptor());
classes.accept(Renamer(config));
try {
await classes.accept(DartGenerator(config));
log.info('Completed');
} on Exception catch (e, trace) {
stderr.writeln(trace);
log.fatal('Error while writing bindings: $e');
}
}