generate method

Future<List<GeneratedFile>> generate(
  1. DirectoryGeneratorTarget target,
  2. V vars, {
  3. bool overwrite = false,
})

Implementation

Future<List<GeneratedFile>> generate(DirectoryGeneratorTarget target, V vars, {bool overwrite = false}) async {
  MasonGenerator generator = await MasonGenerator.fromBundle(this);

  Map<String, dynamic> json = vars.toJson();

  // Use default values for missing or null json values.
  for (String key in this.vars.keys) {
    json[key] ??= this.vars[key]!.defaultValue;
    if (json[key] == null) {}
  }

  return generator.generate(
    target,
    vars: json,
    fileConflictResolution: overwrite ? FileConflictResolution.overwrite : FileConflictResolution.skip,
  );
}