| // Copyright 2014 The Flutter Authors. 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'; |
| |
| /// The builder factory used by the `build.yaml` script. |
| Builder simpleBuilder(BuilderOptions options) => SimpleBuilder(); |
| |
| /// A trivial builder which copies the contents of a `spec` file into a `dart` file. |
| class SimpleBuilder extends Builder { |
| @override |
| Map<String, List<String>> get buildExtensions => const <String, List<String>>{'.spec' : <String>['.dart']}; |
| |
| |
| @override |
| Future<void> build(BuildStep buildStep) async { |
| final AssetId output = buildStep.inputId.changeExtension('.dart'); |
| final String contents = await buildStep.readAsString(buildStep.inputId); |
| buildStep.writeAsString(output, contents); |
| } |
| } |