| // Copyright (c) 2016, 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. |
| |
| library fasta.target; |
| |
| import 'dart:async' show Future; |
| |
| import 'ticker.dart' show Ticker; |
| |
| import 'ast_kind.dart' show AstKind; |
| |
| /// A compilation target. |
| /// |
| /// A target reads source files with [read] and writes out the resulting |
| /// program when [writeOutline] is called. |
| abstract class Target { |
| final Ticker ticker; |
| |
| Target(this.ticker); |
| |
| /// Instructs this target to include [uri] in its result. |
| void read(Uri uri); |
| |
| /// Write the resulting program in the file [uri]. |
| Future writeProgram(Uri uri, AstKind astKind); |
| |
| /// Write the resulting outline in the file [uri]. |
| Future writeOutline(Uri uri); |
| } |