Используя стек source_gen для создания генератора кода, как я могу создать генератор, который генерирует код, который будет входом другого генератора (более конкретно json_serializable
)?
Например, рассмотрим:
class Example extends Generator {
@override
String generate(LibraryReader library, BuildStep buildStep) {
return '''
@JsonSerializable(nullable: false)
class Person {
final String firstName;
final String lastName;
final DateTime dateOfBirth;
Person({this.firstName, this.lastName, this.dateOfBirth});
factory Person.fromJson(Map<String, dynamic> json) => _PersonFromJson(json);
Map<String, dynamic> toJson() => _PersonToJson(this);
}
''';
}
}
Это пример генератора кода, который выводит код, который затем необходимо отправить json_serializable
Что я могу сделать, чтобы json_serializable
здесь правильно генерировалось?
await Process.start('bash',arguments,runInShell: true);
но это своего рода последнее средство для игры. на самом деле я только что попробовал все логики генерации кода один день назад по этой ссылке репо, так что ... я думаю, что могу быть полезен.
flutter generate
/ pub run build_runner build
. В противном случае это было бы очень необычно для использования.