// Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. import 'package:build/build.dart'; import 'package:json_annotation/json_annotation.dart'; import 'package:source_gen/source_gen.dart'; import 'json_literal_generator.dart'; import 'json_serializable_generator.dart'; /// Returns a [Builder] for use within a `package:build_runner` /// `BuildAction`. /// /// [formatOutput] is called to format the generated code. If not provided, /// the default Dart code formatter is used. Builder jsonPartBuilder( {String formatOutput(String code), JsonSerializable config}) => SharedPartBuilder([ JsonSerializableGenerator(config: config), const JsonLiteralGenerator() ], 'json_serializable', formatOutput: formatOutput);