Menggunakan tumpukan source_gen untuk membuat generator kode, bagaimana saya bisa membuat generator yang menghasilkan kode yang akan menjadi input generator lain (lebih khusus json_serializable
)?
Sebagai contoh, pertimbangkan:
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);
}
''';
}
}
Ini adalah contoh generator kode yang menghasilkan kode yang kemudian perlu dikirim json_serializable
Apa yang bisa saya lakukan sehingga json_serializable
menghasilkan dengan benar di sini?
await Process.start('bash',arguments,runInShell: true);
tetapi ini adalah cara terakhir untuk bermain. sebenarnya saya baru saja mencoba semua logika pembuatan kode satu hari yang lalu pada tautan repo ini jadi .. saya pikir saya bisa membantu.
flutter generate
/ pub run build_runner build
. Kalau tidak, akan sangat tidak biasa untuk digunakan.